编程开发 > C/C++ > 文章内容

C语言入门教程:结构类型变量的说明

2016-4-26编辑:ljnbset

结构类型变量的说明

说明结构变量有以下三种方法。以上面定义的 stu为例来加以说明。

1. 先定义结构,再说明结构变量。如:
struct stu
{
int num;
char name[20];



char sex;
float score;
};
struct stu boy1,boy2;


说明了两个变量 boy1和boy2为 stu结构类型。也可以用宏定义使一个符号常量来表示一个结构类型,例如:


#define STU struct stu
STU
{
int num;
char name[20];
char sex;
float score;
};
STU boy1,boy2;


2. 在定义结构类型的同时说明结构变量。例如:
struct stu
{
int num;
char name[20];
char sex;
float score;
}boy1,boy2;


3. 直接说明结构变量。例如:
struct
{
int num;
char name[20];
char sex;
float score;
}boy1,boy2;


第三种方法与第二种方法的区别在于第三种方法中省去了结构名,而直接给出结构变量。三种方法中说明的
boy1,boy2变量都具有图 7.1所示的结构。说明了 boy1,boy2变量为stu类型后,即可向这两个变量中的各个成员赋
值。在上述stu结构定义中,所有的成员都是基本数据类型或数组类型。成员也可以又是一个结构, 即构成了嵌套的
结构。例如,图7.2给出了另一个数据结构。 按图7.2可给出以下结构定义:

struct date{
int month;
int day;
int year;
}
struct{
int num;
char name[20];
char sex;
struct date birthday;
float score;
}boy1,boy2;


首先定义一个结构date,由month(月)、day(日)、year(年) 三个成员组成。 在定义并说明变量 boy1 和boy2 时,
其中的成员 birthday被说明为data结构类型。成员名可与程序中其它变量同名,互不干扰。结构变量成员的表示方
法在程序中使用结构变量时, 往往不把它作为一个整体来使用。

在ANSI C中除了允许具有相同类型的结构变量相互赋值以外, 一般对结构变量的使用,包括赋值、输入、输出、
运算等都是通过结构变量的成员来实现的。

 表示结构变量成员的一般形式是:结构变量名.成员名 例如:boy1.num 即第一个人的学号 boy2.sex 即第二个
人的性别 如果成员本身又是一个结构则必须逐级找到最低级的成员才能使用。例如:boy1.birthday.month 即第一个


人出生的月份成员可以在程序中单独使用,与普通变量完全相同。

C语言入门教程:结构的定义

热点推荐

登录注册
触屏版电脑版网站地图