c/c++ 自己对const修饰指针的理解
2013-05-09 10:36
274 查看
/*
//const 修饰的*pth,所以对pth指针所指向的内存,是const的,但是指针本身可以变(即可以指向别的变量)
int a=10;
int b=11;
const int *pth;
pth=&a;
pth=&b;
//与上面一样
int a=10;
int b=11;
int const *pth;
pth=&a;
pth=&b;
*/
/*
//const 修饰的是pth,即指针本身被修饰,所以指针指向的值是固定不变的,但是指针指向的内容的值是可以通过该指针进行修改的。
int a=10;
int b=11;
int* const pth=&a;
*pth=11;
*/
printf("pth is %d\n",*pth);
getchar();
return 0;
主要要看清楚const修饰的是谁。如果是指针指向的内容,那就是内容不能用此指针去改变,如果修饰的是指针本身那么指针本身的指向不能改变,但是可以改变指针指向的内容。
//const 修饰的*pth,所以对pth指针所指向的内存,是const的,但是指针本身可以变(即可以指向别的变量)
int a=10;
int b=11;
const int *pth;
pth=&a;
pth=&b;
//与上面一样
int a=10;
int b=11;
int const *pth;
pth=&a;
pth=&b;
*/
/*
//const 修饰的是pth,即指针本身被修饰,所以指针指向的值是固定不变的,但是指针指向的内容的值是可以通过该指针进行修改的。
int a=10;
int b=11;
int* const pth=&a;
*pth=11;
*/
printf("pth is %d\n",*pth);
getchar();
return 0;
主要要看清楚const修饰的是谁。如果是指针指向的内容,那就是内容不能用此指针去改变,如果修饰的是指针本身那么指针本身的指向不能改变,但是可以改变指针指向的内容。
相关文章推荐
- c++中 const修饰指针的理解与记忆法
- 理解复杂的C/C++声明 const, typedef , 函数指针
- C++中 const int* ,int * cnost,以及指针 (pointer) 的理解
- c++ const修饰指针
- C++ Primer Plus学习笔记之const修饰指针
- 理解复杂的C/C++声明 const, typedef , 函数指针
- 我的C++学习日记——关于const数值变量,指针和引用的理解
- C++点滴——const/volatile不能用来修饰没有this指针的成员函数
- C++中有关const修饰指针和变量
- C++中const修饰指针探讨
- C++:带有const修饰的指针解读
- 【C++】const、volatile不能修饰没有this指针的成员函数
- C++ 语法实验室之指针、常量const、字符串和等号初学误区理解
- [C++] C++中const修饰指针,变量, 函数参数和函数返回值的用法总结
- C++中Const 修饰指针就近原则
- C++中常量指针,指针常量(const 和*)的使用方法和理解方法
- 理解复杂的C/C++声明 const, typedef , 函数指针
- C++中const修饰基本数据类型、指针、引用、对象
- [c/c++]const修饰指针
- 【C++】C++基础:指针__引用__const