结构体和指针

1、结构体

一般声明为全局变量

声明格式如下:

struct   结构体名

{        };

定义结构体变量:

struct  结构体名   变量名 ;

2、结构体数组

struct   student   stu[5];

3、结构体指针数组

struct  student  *stu[5];

&(stu[i]->age)

注:在scanf格式化输入时,关键看箭头后面那部分是不是指针

4、链表

用一个分配一个,没有上限。

结构体指针数组的用法和链表有点类似,但是有上限。

5、内存管理

虚拟内存

数据段:全局变量、static静态变量

代码段:代码、常量(只读的)

栈:局部变量(形参)

堆空间:malloc、free

6、栈和堆的区别

栈:操作系统管理,申请释放都是操作系统完成

堆:用户管理,申请和释放由用户完成,申请 malloc   释放 free

猜你喜欢

转载自blog.csdn.net/weixin_41030848/article/details/81277368