本笔记主要记录常量指针的理解
const int *p;
int const *p;
上面p被*修饰,表明它是个指针变量,int和const都是修饰这个指针变量的所指向的内容的,所以不分前后顺序,是一回事。
void main()
{
int a = 0;
int b = 20;
//下面这两种定义常量指针的方法都合法。
const int *p0; //常量指针,是个变量,*是修饰p的,而const和 int都是修饰p所指向的内容的
int const *p1;
p0 = &a;
p1 = &b;
cout<<"p0 指向的内容"<<*p0<<endl;
cout<<"p1 指向的内容"<<*p1<<endl;
cout<<"hello..."<<endl;
system("pause");
return;
}
运行上面的代码:
上面的代码可以证明,这两种定义方法都是合法的。
同时也证明const 的意思不是说p0 p1本身是不可变的,因为 p0 = &a;p1 = &b;是可以赋值的。
int 和const修饰的是指针指向的内容。