一.内存管理
由程序员手动管理:
(1)申请
malloc()
#include<stdlib.h>
void *malloc(size_t size);
功能:在堆区申请一段连续内存空间;
参数:size:申请的连续空间的字节数;
返回值:申请成功返回申请得到的连续空间的起始地址;
失败返回NULL;
(2)释放
free();
void free (void *pstr);
注意:
1.有申请必须在使用完成后释放,否则可能造成内存泄漏;
2.malloc()必须对返回值判空,否则可能出现程序崩溃;
二.链表
链表由头节点和数据节点构成;
节点:数据域:保存数据
指针域:保存节点关系;
头节点:第一个节点,并且不能保存有效数据
1.创建:malloc申请头节点;
2.增(头插,尾插);
头插
尾插
3.删(头删,尾删);
尾删
4.查找;
5.改换;
6.清空;
7.销毁;
8.打印;