七、C语言-指针
1.指针和指针变量
int * p; //p是变量的名字,int *表示p变量存放的是int类型变量的地址
//int * p不不表示定义了一个名字叫*p的变量
//int * p应该这样理解:p是变量名,p变量的数据类型是int *数据类型
//所谓int *类型实际就是存放int变量地址的类型
int i = 3;
p = &i;//1.因为p保存了i的地址,因此p指向i
//2.p不是i,i也不是p,更准确的说:修改p的值不影响i的值,修改i的值也不影响p。
//3.如果一个指针变量指向了某普通变量,则*指针变量完全等同于普通变量
例子:
如果p是个指针变量,并且p存放了普通变量i的地址,则p指向了普通变量
p 就完全等同于普通变量i
或者说:在所有出现p的地方都可以替换成I,在所有出现i的地方都可以替换成*p
*p实质是以p的内容为地址的变量
j = *p; //等价于j = i
printf("%d\n",