在C中,定义一个结构体可以并建议用typedef struct,如下代码:
typedef struct Employee//Employee是标识符,可以不写Employee { int empNumber; int age; int departNumber; }Emp;
此处Emp是一个结构体类型,使用的时候需要于是在声明结构体变量的时候:Emp emp1; 此时也可以写struct Employee emp1;来声明结构体变量, Emp和struct Employee是等价的,当然也不可不写Employee,这样的话只有Emp emp1;
在C++中,定义一个结构体可以使用typedef struct,如下代码:
typedef struct Employee//Employee是标识符,可以不写Employee { int empNumber; int age; int departNumber; }Emp;//Emp 是结构体类型
Emp是结构体类型,需要声明结构体变量才能使用,Emp emp2; 这个同样等价于 struct Employee emp2;(struct Employee等价于Emp)。
在C++中,定义一个结构体也可以使用struct,不带有typedef,如下代码:
struct Employee//Employee是结构体类型 { int empNumber; int age; int departNumber; }Emp;//Emp 是结构体变量,可以不写
此处Emp是结构体变量,而Employee是结构体类型,使用的话直接用结构体变量就行,例如: Emp.age=25; 另外Emp可以不写,不写的话需要自己另行声明结构体变量,如:Employee emp2;