关于指针的心得1
一、指针和一般变量:
1、指针和变量都是一个值
一个变量对应着两个数值,一个是他的地址,一个是地址之中所存放的值
为了区分这两个,我们定义了两种变量
一种是一般所说的变量,另外一种是指针变量
一般变量int a,所存放的就是一个变量值
而指针变量int *则是一个值为内存地址的变量
这也就是为什么对变量a赋值就是改变所存放的变量值,对指针变量a赋值改变的就是指针的值(地址)
2、通过一个值找到另外一个值
如果还想对这两个不同类型的变量做其他操作,我们则需要附加一些符号。
一般我们会想通过这个变量值来找到他被存放的地址或者通过地址来找到这个地址所存放的变量值。
我们可以使用一下运算符进行操作
想要通过存放值调用他的地址的话,则需要使用取址符号& &a
想要通过指针调用他所存放的值的话,则需要使用间接运算符* *a
二、指针使用的细节
1、%p对于任何类型的变量都适用,显示的都是他的地址。但是在使用之前必须保证他是个地址(加上取址符号&);
2、指针就是地址,每个地址对应着八个比特大小的空间或者说一个字节;
3、无论任何类型的指针,指针变量的大小都是一样的都是八个字节;
4、int *a,a对应的是地址,*a对应的是它所指向的变量值;
5、指针的类型必须和变量的类型相互统一才能够进行指向;
6,定义指针的时候尽量不要让指针悬空,要int *a = NULL;


浙公网安备 33010602011771号