首相应该明白供用户使用的存储区有,
1.程序区
2.动态存储区
3.静态存储区
malloc就是创建一块动态的存储区
一、建立动态链表的精髓
- 建立三个指针,一个头指针,一个开辟指针,一个紧随指针。
- 头指针用于存放该链表的头节点地址。
- 开辟指针用于指向新malloc空间的头地址。
- 紧随指针,通知p->next域链接开辟指针所在空间的首地址。
- 最后紧随指针在和开辟指针站在一起,等待开辟新的空间。
二、删除动态链表的精髓
- 建立两个指针,一个寻找指针,一个 紧随指针。
- 紧随指针永远寻找指针的前面。
- 紧随指针->next = 寻找指针的->next域(即下一个内存块的首地址)
三,插入某个节点的精髓
- 建立三个指针,一个指向待插入节点的指针,一个寻找指针,一个紧随指针。
- 寻找指针找到要插入的地方之后,紧随指针->next指向插入节点的指针,待插入节点的指针指向紧随指针。
指针变量和指针的地址一定要弄清楚,指针指向某个地址之后,指针的地址什么??也要弄明白
这篇博客就写的这个,《结构体指针地址的问题,指针的地址疑惑的问题》,这样我觉得对指针的运用就比较好了。