1、动态内存分配
malloc
free
1.1动态内存分配---自动内存分配 区别
int main(int argc,char *argv[])
{
int a=10;
int *p=(int *)malloc(4);
*p=10;
return 0;
}
更实用的例子 是Student中的name
name 是 地址变量----随机数 地方
malloc 开辟内存空间,然后把空间首地址 赋给 name
用strcpy给name 赋值
注意点:
1、malloc----free 必须配合使用
因为malloc分配的内存,不会自动释放------关机、程序退出 才会释放
free(p);
p----地址变量 到底释放多少个字节----由p的类型来决定
知识点:
结构体Student 到底占用几个字节--------必须要用 sizeof
结构体指针------结构体地址变量
struct Student *p;
链表
代码:
#include
#include
#include
struct Student
{
int number;
char *name;
struct Student*next;
};
struct Student * c
C语言之_动态内存分配、结构体指针、链表
最新推荐文章于 2023-05-15 11:34:49 发布
本文深入探讨了C语言中的动态内存分配机制,详细解释了如何使用malloc和free进行内存管理。同时,文章还介绍了结构体指针的概念,并结合实例阐述了如何操作结构体指针。此外,文章还讲解了链表的基础知识,包括链表的创建、插入和删除节点等操作,帮助读者更好地理解和应用C语言中的数据结构。
摘要由CSDN通过智能技术生成