第三,有些操作必须使用指针。如操作申请的堆内存。还有:C语言中的一切函数调用中,值传递都是“按值传递”的,如果我们要在函数中修改被传递过来的对象,就必须通过这个对象的指针来完成。
具体用法可参考如下文章:
https://www.cnblogs.com/lulipro/p/7460206.html
void initialList(node **pL)//初始化链表 { (*pL)=(node *)malloc(sizeof(node));//产生头节点 (*pL)->next=NULL;//设置后继指针为空 }
利用指针可以指向变量,字符串,数组,函数以及结构体,具体可以参考这篇文章
https://blog.csdn.net/qq_36243846/article/details/74929207
指针常用的用法有四种:
1、指针指向变量
2、指针指向数组
3、指针指向字符串
4、指针指向函数
5、指针指向结构体
详细的用法可以看:https://blog.csdn.net/qq_36243846/article/details/74929207
指针因为操作比较灵活,被很多人认为是C语言里的一个精髓。
指针一般使用就是指向某个变量或存储区域地址,可以方便访问到这个地址里的数值。
指针实际是一种直接对内存的操作(虚拟内存或者裸开发时的实际内存),
所以指针实际就是内存空间地址
使用好了,有很大的方便,但使用不好也会出现很大问题,常见的问题就是内存访问越界和内存不再使用的垃圾不回收问题。
直接定义void*p
然后就可以用p指向地址了.
指针的用法可以理解成对一个地址直接访问和读写。推荐可以看看
C语言指针相关书籍。