struct 和 typedef struct
struct 和 typedef struct区别:C语言和C++略有区别
首先,C语言中:
struct Student{
……
}s1; //s1是一个变量
上面这段代码实际上是将以下两个操作合在了一起:
struct Student{ //定义结构体
……
};
struct Student s1; //定义一个Student类型的变量s1
而 typedef struct Student{
……
}s1; //s1是 struct Student 的另一个表示方法
上面这段代码实际上是将以下两个操哦做合在了一起:
struct Student{ //定义结构体
……
};
typedef struct Student s1;
其次,在C++中:
定义、使用基本与C语言中相同,唯一区别是对下面这个结构体来说:
typedef struct Student{
……
}s1;
C语言可以用 struct Student 变量名、s1 变量名 两种方式来申请结构变量
而在C++中可以用 struct Student 变量名、Student 变量名、s1 变量名 三种方式来申请结构变量
最后,在定义链表时可能会出现下面这种情况:
typedef struct Student{
……
}s1,s2;
s1 和 s2 的表达意义是相同的,只是有时候在编程的时候用不同的名字来表示不同的侧重点
浙公网安备 33010602011771号