1. 先定义结构类型,再定义结构变量。
struct book /* 定义结构体类型 */
{
char bookname[20]
float price
char publisher[20]
char author[10]
}
struct book mybook, storybook
用这种方法定义结构变量,是最常用的方法,但须注意不能省略关键字“ struct ”。还可以在定义结构变量的同时给它的成员赋初值。如:
struct book /* 定义结构体类型 */
{
char bookname[20]
float price
char publisher[20]
char author[10]
}
struct book mybook = { “maths”, 24.7, “ 电子社 ”, “zhao” }, storybook
则, mybook 变量的 price = 24.7 。
2. 定义结构类型的同时定义结构变量。
struct book /* 定义结构体类型 */
{
char bookname[20]
float price
char publisher[20]
char author[10]
} struct book mybook, storybook
3. 不定义结构类型,直接定义结构变量。
struct /* 不定义结构类型名 */
{
char bookname[20]
float price
char publisher[20]
char author[10]
} struct book mybook, storybook
需要说明的是,当某结构类型的成员又是另外一个结构类型时,称嵌套定义,其定义方法如下:
struct brith_date
{
int month
int day
int year
}
struct
{
char name[10]
char address[30]
char tel[12]
int age
struct data birthday
char sex[3]
} student_01 , employee
此例直接定义了 student_01 和 employee 两个变量,但是没有定义此结构体的名字,因此不能再定义与student_01 和 employee 同类的其它结构变量了!如下行定义是错误的:
truct boy, girl
是c语言中,多个不同类型的数据组合成一个整体。如一个学生的学号、姓名、班级、年龄和成绩等,虽然各个属性分别属于不同的数据类型,但是它们之间密切相关,各种信息都属于同一个人。
这时,可以声明一个结构型的数据类型,由多种数据类型,可以是基本数据类型,也可以是自定义的数据类型,组成一个集合。
示例代码
struct student{int numchar name[20]int score}
扩展资料定义
struct 结构类型名
{ 数据类型说明符1 成员名1;数据类型说明符2 成员名2;……数据类型说明符n 成员名n;};
struct是一个关键字,表示结构类型定义的开始,结构类型说明符可以是int、float、char等等各数据类型。花括号括起来的就是组成结构的各个组成部分。这里定义的结构类型名就相当于int、float等。
参考资料来源:百度百科-结构类型