C语言:对动态链表、指针、malloc的一些领悟。
程序员文章站
2024-03-07 20:49:15
...
C语言:对动态链表、指针、malloc的一些领悟。
以下内容出自我的课程设计《通讯录管理系统》总结部分。
#define LEN sizeof(Node)
Node* pTemp = (Node*)malloc(LEN);
LEN是我自己定义的数据结构Node所需要的内存量,malloc为我产生一个空白指针a(著名a无意义仅用描述)来保存内存长度为LEN的空白变量x(著名x无意义仅用描述)的头地址,接着(Node*)给空白指针a赋予Node类型(等同于给x进行规划)然后指针a变成半空白指针(有类型但无名)。最后Node*pTemp=半空白指针a(相当于给a命名为pTemp)。
需要注意的是,不能死死扣在 指针 就是 “指向” 。因为 “指向” 这个概念非常抽象,不利于以后学习的深入。指针变量也是变量,只不过别的变量存储的是字符、数字等,而指针变量存储的是其他变量的地址。
当出现这样的赋值语言“指针变量A = 指针变量B” 这句话的意思是用指针变量A来使唤指针变量B,某种意义上A、B是同一个东西了。