比如int* p,p是一个指向int类型的数据的指针。
那int** p2= &p,p2就是一个指向 指向int类型的指针 的指针,赋值之后p2指向p
指针,指向内存空间的地址。指针也具有类型。
int *p;
定义了一个变量,该变量是个指针,内容是一个地址,地址可以指向一个int型数据的内存空间。
除了指向基本数据类型外,也可以指向函数,类对象。
比如:
int a = 5;
p = &a;
这样可以通过p来访问和修改变量a的值。如:*p = 6; 这样a的值就变成了6。
指针也具有类型,通常情况下的赋值:像上面的p=&a;是没有问题的,如果是这样
char c = 'b';
p =&c;
就会出错,因为类型不匹配,即指针也是有自己的类型的。比如p(上面定义的)的类型是int *。