博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
typedef在C和C++的区别?
阅读量:4581 次
发布时间:2019-06-09

本文共 819 字,大约阅读时间需要 2 分钟。

 

一、struct定义结构体

1、先声明结构体类型再定义变量名
struct name
{
member ..
};
name A;...

如:

struct student
{
int a;
};
student stu1,stu2;
若在c语言中定义,应该加上struct:
struct student stu1,stu2;
2、一边声明类型同时定义变量
struct name{
member..
}A,B..;

struct apple

{
int b;
}app1;//app1是一个变量
3、直接定义结构体类型变量
struct
{
int a;
}app2;

二、typedef struct定义结构体

例子:

typedef struct rabbit
{
int rab;
}tt;//tt实际是struct rabbit的别名
   先定义一个结构体类型
struct rabbit
{
int rab;
};
   然后再为这个结构体类型起别名
typedef struct rabbit tt;

此外:

typedef struct{
int a;
}A,A1,A2,*A;
相当于:
typedef struct{
int a;
}A;
typedef A A1;
typedef A A2;
typedef A *A;
此时,A1,A2,A都是结构体类型,声明变量时用任何一个都可以。
而如果在C++中没有typedef关键字,它们是不同的三个对象。

typedef struct rabbit

{
int a;
}A,*A;
其中:A equal to struct rabbit;
         *A equal to struct *rabbit;

 

(注:此部分内容参考自网络其他博客的内容,自己做个笔记记下来。总是混淆) 

 

转载于:https://www.cnblogs.com/AKsnoopy/p/8306595.html

你可能感兴趣的文章