简单说一下数据结构的指针类型;通俗来说,指针也只是种数据类型而已,但是与int,float,char等不同的是,指针是可以存储一个变量的地址的。而指针之所以叫指针是因为它可以存储地址,当我们知道了一个变量的地址后,就可以说是这个指针是指向某个变量的。
int a = 1;
int *p;//这里就是定义了一个指针,名字叫做p;
p = &a;//将变量a的地址赋给p;此时,p中存储的就是a的地址,注意不是a的值,不是1;我们这个时候可以称p指向a了;
//上面两行也等价于 int *p = &a;
//那么在知道了p(也就是a的地址)的情况下,取出1这个数值呢?很简单,需要用到 * 运算符;*p的值就是1了
其实我们可以把&叫做取地址符,把在这里*叫做取值符;
另外还有注意的一点是,如果你定义的是int类型的指针,那么只能指向int型地址变量,相应的char类型的同理;
其实要搞懂指针,关键点就是一定要区分地址,和这个地址里面存的值是不同的这个道理。关于,二重指针,可以理解为一重指针你自己本身也只是个变量(只是比较特殊而已),所以自然本身也是需要存储地址的,那么这个地址再存到一个指针里面,那么看起来就像是二重了。关于二重指针用的较少,受限于时间,我后期遇到会再添加相关代码。
356

被折叠的 条评论
为什么被折叠?



