/*
*初步了解结构体的定义方式,及含义
*/
#include
//struct是一个关键子
//注意:
//1、结构体是在函数外面,而不是里面
//2、结构体定义的是一个新的组合类型,而不是变量,也不消耗内存
// 稍后在定义变量的地方,再使用该结构体类型来定义变量
struct Student
{
char name[20]; //学生姓名
unsigned int num; //学号
int isMale; //性别
};
int main(void)
{
struct Student s1; //s1是一个变量,类型是struct Student
//给结构体变量的赋值
s1.name[0] = 'J';
s1.name[1] = 'i';
s1.name[2] = 'm';
s1.name[3] = '\0';
s1.num = 123;
s1.isMale = 1;
//打印检验看对不对,打印结果:s1.name = Jim, s1.num = 123, s1.isMale = 1.
printf("s1.name = %s, s1.num = %d, s1.isMale = %d.\n", s1.name, s1.num, s1.isMale);
return 0;
}
结构初始化的两种方法
方法一:
struct MyStruct s = {100, 'd', 12.445, 111.11111111};
方法二:这种方法可以不用全部初始化, 想初妈哪一个就只初始化哪一个
struct MyStruct s =
{
.a = 100,
.c = 'd',
.f = 13.445,
.d = 111.11111111,
};