1).指针变量是用来存储另外1个变量的地址的。
->所以,我们不能直接赋值1个非地址类型的常量数据。
->所以,我们也不可以直接赋值1个变量给指针。
所以,指针变量是来存储地址的,不是来存储这些东西的。
2).指针是用来存储另外1个变量的地址的,并且指针可以存储的另外一个变量的地址,这个变量的类型是限定的。
3).正确的初始化步骤
a.先取出变量的地址。
好简单。使用&取地址运算符就可以取出变量的地址。
要打印地址,使用格式控制符%p。
b.将取出来的变量的地址赋值给指针变量。
int num = 10;
int* p1 = #
这个时候,p1指针变量的值就是num变量的地址。
那么我们就说,p1指针指向了num变量。
4).指针变量只能存储和指针变量类型相同的普通变量的地址,否则就会出现问题。
起码我们现在看到在变异的时候会报1个大警告。
5).如果直接写变量名,操作的就是这个变量。你可以为这个变量赋值或者取值。
&变量名;其实这是1个表达式,&是1个运算符,叫做取地址运算符。
这个表达式的结果是这个变量的地址。
6).指针变量在内存当中也有1个地址,因为指针变量也是1个变量。
所以,我们也可以使用&符号取出指针变量的地址。
int *p1;
p1操作的是p1这个指针变量,可以取p1的值,也可以为p1赋值。
&p1拿到的是p1的地址。
|