结构的定义
定义一个结构的一般形式为:
struct 结构名
{
成员表列
}
例如:
struct stu
{
int num;
char name[20];
int age;
}
结构类型变量的说明
结构体定义并不是定义一个变量,而是定义了一种数据类型,这种类型是你定义的,它可以和语言本身所自有的简单数据类型一样使用(如 int )。
结构体本身并不会被作为数据而开辟内存,真正作为数据而在内存中存储的是这种结构体所定义的变量。
说明结构变量有以下三种方法。以上面定义的stu为例来加以说明。
1. 先定义结构,再说明结构变量。 如:
struct stu
{
int num;
char name[20];
int age;
};
struct stu boy1,boy2;
说明了两个变量boy1和boy2为stu结构类型。
也可以用宏定义使一个符号常量来表示一个结构类型, 例如:
#define STU struct stu
STU
{
int num;
char name[20];
int age;
};
STU boy1,boy2;
2. 在定义结构类型的同时说明结构变量。例如:
struct stu
{
int num;
char name[20];
int age;
}boy1,boy2;
3. 直接说明结构变量。
例如:
struct
{
int num;
char name[20];
int age;
}boy1,boy2;
第三种方法与第二种方法的区别在于第三种方法中省去了结构名,而直接给出结构变量。
结构体变量的成员在内存中占用连续的存储区域,所占内存大小为结构体中每个成员的长度之和。一个结构体变量占用内存的实际大小,可以利用sizeof运算符求出。
原文地址:http://www.cnblogs.com/cj2014/p/3738221.html