结构体与联合

这篇博客详细介绍了C语言中的结构体、联合体和枚举的使用。首先讲解了如何定义和初始化结构体,包括如何通过指针操作结构体成员。接着,讨论了结构体的内存分配和长度计算原则。然后,提到了联合体的特性,即所有成员共享同一段内存,并解释了其长度的确定方式。最后,介绍了枚举作为替代宏定义大量常量的简洁方法,并说明了枚举值的默认递增和自定义设定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 struct +结构体名 +{成员表列};
比如:struct student
{
char name[32]; //不能写成char name[32]={0}
int age;
char sex;
};
2 定义结构体变量:struct student s1;
3 初始化结构体变量:struct student s2 ={“aaa”, 21, ‘m’};
4 打印结构体变量(逐个打印):printf("%s %d %c\n", s1.name, s1.age s1.sex); //通过结构体变量访问结构体成员用符号点“ . ”来进行
5 赋值结构体变量:
strcpy ( s1.name ,“b”);
s1.age = 20;
s1.sex = ‘m’;
6 关于虚拟内存的一些知识用图片的方式更加直观得呈现给大家:

7 结构体指针:
struct student *s3
s3 = (struct student *)malloc(sizeof(struct student));
strcpy (s3 -> name, “ccc”);
s3 -> age = 25;
s3 ->sex = ‘m’;
printf("%s %d %c\n", s3 -> name, s3 -> age, s3 -> sex);
scanf("%s", s1.name); //s1在上述中提及,本次直接拿来用,不到之处请多多包涵
scanf("%s",

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值