立即学习:https://edu.csdn.net/course/play/271/1721?utm_source=blogtoedu
变量在内存中占据一定存储单元。
通过变量名,找到对应的存储单元,从而操作变量的值。
内存里每个字节的编号叫做“地址”。
一个变量的地址称为变量的指针。
指针变量:专门用来存放另一变量地址的(也就是存放指针)的变量
表示方法:*变量 (e.g *p表示指针变量)
int *p 指向整型变量的地址
p=&i(表示对i整型变量取地址)也就是说,p变量里保存的是i变量的地址。
printf("%d",i);直接访问i
printf("%d",*p);间接访问i
(效果一致),(指针变量的值是所指向变量的地址)。
指针变量相关的运算符(*、&)
* 间接访问运算符
&取地址运算符。
定义指针变量:
基类型 *指针变量名
int i,j;
int *pointer_1,*pointer_2 = &j;
float *pointer_3 = NULL; (空指针)
char *pointer_4;( 指向字符型的指针)
定义指针变量时必须指定基类型。
32位平台中,指针/4bytes,用来存放变量的地址。
指针变量指向运算禁忌:
1.不能对未赋值的指针变量做指向运算(野指针)。不能用随机指针。
2.不能用整数为指针变量赋值。