C++中关于指针的赋初值有两种方法:
(1)在声明指针的同时进行初始化赋值,语法为:
存储类型 数据类型 *指针名=初始地址;
(2)在声明后,单独使用赋值语句,赋值语句的语法形式为:
指针名=地址;
即为:
(1)int *p=&a;
(2)int *p;
p=&a;
我之前一直不明白的是为什么第一种方法对*p赋值为&a,结果*p=a;
然后我觉得第一种方法可以理解为,先对指针p进行声明,然后在p中存入a的地址,而不是将*p进行赋值,整个语句只是对p进行赋a的地址值。
C++中关于指针的赋初值有两种方法:
(1)在声明指针的同时进行初始化赋值,语法为:
存储类型 数据类型 *指针名=初始地址;
(2)在声明后,单独使用赋值语句,赋值语句的语法形式为:
指针名=地址;
即为:
(1)int *p=&a;
(2)int *p;
p=&a;
我之前一直不明白的是为什么第一种方法对*p赋值为&a,结果*p=a;
然后我觉得第一种方法可以理解为,先对指针p进行声明,然后在p中存入a的地址,而不是将*p进行赋值,整个语句只是对p进行赋a的地址值。