指针是地址,指针变量是存储地址的变量。
一个变量的地址称为该变量的“指针”。
内存的每个存储单元都是有编码的,每个编码都不同,这些编码称为地址。
例如:int i=3;
int是类型 告诉系统需要的存储单元。假如系统分配了编码为2000的地址给i,日后在调用i的时候实际上就是通过i找到地址为2000的存储单元,然后调用里面的内容。
定义的指针变量的时候一般形式是:
类型名 *指针变量名
假如有:
int i,k,j;
double a,b,c;
这时想要指向这些变量,就要如下定义:
int *p_i;
p_i=&i; //&是取地址运算符。&i就是变量i的地址。
double *p_d;
p_d=&a;
你想指向的变量是什么类型,你定义的指针就要是什么类型。
另外也可以在定义指针的时候就赋值,如:
int *p_i=&i; (这和*p=&i是不一样的,p是指针变量,*p是指向的地址的内容,定义时 int *p的*p是说p为指针变量的意思。)
A:把3赋值给i的地址,错误
B:把3赋值给p所指向的地址,指针变量p没有指向任何地址,为野指针。
C:在此赋值语句中,2000只是作为一个数值,不代表地址,所以同上。
D:将i的地址赋值给指针变量p
温馨提示:答案为网友推荐,仅供参考