说一个比较好记的方法来区分 int const *p与 int* const p,把*读作pointer to然后从后往前读.
第一个int const *p就可以读作 p is a pointer to const int,p是指向常量的指针
第二个int* const p就可以读作 p is a const pointer to int,p是指向int型的常指针
第一个int const *p就可以读作 p is a pointer to const int,p是指向常量的指针
第二个int* const p就可以读作 p is a const pointer to int,p是指向int型的常指针
2015-08-03
可变的指针去指向不可变的变量是错的
const int *p 常指针
int *const p 指向常量的指针
const int *const p 指向常量的常指针
const int *p 常指针
int *const p 指向常量的指针
const int *const p 指向常量的常指针
2015-08-03
可变的指针去指向不可变的变量是错的
const int x=3;
int *y=&x;//错误
int x=3;
const int *y=&x;//正确
const int x=3;
int *y=&x;//错误
int x=3;
const int *y=&x;//正确
2015-08-02
int x=3;
const int*y=&x;
*y=5;
//单从语法上就是错误的
int x=3,z=6;
const int *y=&x;
y=&z//正确
const int*y=&x;
*y=5;
//单从语法上就是错误的
int x=3,z=6;
const int *y=&x;
y=&z//正确
2015-08-02