标签:lazy malloc 结构 pre 字符串 size 必须 col 用法
1.bss:未初始化区域,bss空间都初始化为零,
字符串只读区在.data区
free当进入主函数开始,主函数结束完毕
struct Student * sp2 = (struct Student*)malloc(sizeof(*sp2)); struct Student * sp3 = (struct Student*)malloc(sizeof(sp3));
第一个对,第二个错,
定义一个指针,指针类型为struct student,malloc实际上分配的是学生的大小,sp2是指针,*sp2是所指之物的大小,20+4+4=28个空间,
sp3是一个指针,空间大小为4,不能满足所需空间。
next必须加*,否则形成不完整类型,出现无限循环
char s_name[20];
strcpy_s(p->s_name,20,"yhping");
字符串不可以直接给数组,需要调用拷贝函数
单链表结构,p指向wuzheng...,然后指向yhping...,然后置空
数组的用法大开小用;
2.柔性数组:可伸缩,大小未知的数组
数组的大小声明为0,或者不给出大小,称之为柔性数组
并不计算到结构体大小中,data只作为一个名称作为使用,本身并不占空间,只代表了一个偏移量,代表一个不可修改的地址常量
3
第一个为柔性数组,字节大小为4.第二个为数组,字节大小为16
4.
c17,动态内存管理与结构体,柔性数组,把字符串转换为整形例题讲解
标签:lazy malloc 结构 pre 字符串 size 必须 col 用法
原文地址:https://www.cnblogs.com/xpei-1124/p/14629532.html