C和C++在结构体上的区别:
在C中,定义一个结构体变量必须要用typedef:
typedef struct Student
{
int a;
float b;
}Stu;
Stu s1;
s1.a=1;
s1.b=2.2;
而在C++中,有两种方式,
方式一:不需要typedef即可定义
struct Student
{
int a;
float b;
}Stu;
Stu.a=1;
Stu.b=2.2;
可以直接用Stu.a;而不需要Stu s1;然后再s1.a;
方式二:用typedef定义
typedef struct Student
{
int a;
float b;
}Stu1;
Stu1 stu1;
stu1.a=1;
stu1.b=2.2;
其实,只要用了typedef,C、C++用法都一样,只是C++多了一种方式而已。