指针详解:https://www.cnblogs.com/tongye/p/9650573.html
1.内存中的每个位置有一个独一无二的地址标识;
内存中的每个位置都包含一个值
通过变量名字来代替地址
2.未初始化和非法的指针
极为常见的错误:
int *a;
*a=12;
这个声明创建了一个名叫a的指针变量,后面那条赋值语句把12存储在a所指向的内存位置。
a没有被初始化,无法预料12这个值被存到哪里,会产生segmentation fault错误
所以在对指针进行间接访问之前,确保他们已被初始化
3.NULL指针
对指针进行解引用操作可以获得它所指向的值,NULL指针未指向任何东西,对NULL指针进行解引用操作是非法的
如果你已经知道指针被初始化为什么地址,就把它初始化为改地址,否则初始化为NULL
4.指针和数组的区别和联系
https://blog.youkuaiyun.com/cherrydreamsover/article/details/81741459