一:指针变量的定义
类型说明符 *变量名;
eg:int *p;*表示这是一个指针变量,变量名即为指针变量名,类型说明符表示该指针变量所指向地址的数据类型。
二:指针的赋值
int a,*p;
p=&a; 要注意a一定要定义在指针变量p之前;
int b=3,*p;
p=&b;注意赋值的时候指针变量名之前无需再加*说明符。
printf("%d",*p): 打印出来的结果就是3;
要区别这里的* 变量名之前的*为指针说明符,而后者则为一个运算符,叫做取地址运算符。所以就用了两种访问方式:
1.b=3;
2.*p=3;
三:指向数组的指针变量
int a[10],*p;
p=a;//a即为该数组地址;也可表示为p=&a[0];
(p+i)和(a+i)都是数组内下标为i的地址;
eg:a[3]={0,1,2};
那么*(p+1)即代表a[1]的值;