const指针和指向const对象的指针
2014-11-02 11:13
232 查看
从题目中看,哇,好拗口,一口气可以讲下来的人可以去试试相声了。Well,书归正传。
首先从字面上看,这是两个不同的指针。
1.指向对象的const指针
const中文意思是常量,那“const指针”也就是指针本身就是常量,既然是常量就不可以改变。例如"char *const point","point"这个指针是指向char型数据的,而且是不可以改变的。
char a,b;
a=‘a’,b='b';
char* const point=&a//注意此处point是一定要赋初值的
point=&b;//错误,point本身是常量,常量就不可以改变,“他”的一生都要指向变量a这个空间的
*point=b;//对的相当于a='b';也就是说a这个空间里的数据是可以改变的;
2.指向const对象的指针
此处的指针式普通的指针,但要注意的是“他"指向的对象本身是const的是不可以修改的,但指针是可以改变的。
char a,b;
a=‘a’,b='b';
const char* point;//此处point是不用付初值的
point=&b;//正确,point本身是普通指针,可以换指向的
*point=b;//错误,point指针指向的是不可改变内容的空间,不能向空间重新赋值的;
还有一种指向const对象的指针表达方式:
char const * point;
小心得:只有const 和 point 之间没有任何插入项时才是常量指针。
首先从字面上看,这是两个不同的指针。
1.指向对象的const指针
const中文意思是常量,那“const指针”也就是指针本身就是常量,既然是常量就不可以改变。例如"char *const point","point"这个指针是指向char型数据的,而且是不可以改变的。
char a,b;
a=‘a’,b='b';
char* const point=&a//注意此处point是一定要赋初值的
point=&b;//错误,point本身是常量,常量就不可以改变,“他”的一生都要指向变量a这个空间的
*point=b;//对的相当于a='b';也就是说a这个空间里的数据是可以改变的;
2.指向const对象的指针
此处的指针式普通的指针,但要注意的是“他"指向的对象本身是const的是不可以修改的,但指针是可以改变的。
char a,b;
a=‘a’,b='b';
const char* point;//此处point是不用付初值的
point=&b;//正确,point本身是普通指针,可以换指向的
*point=b;//错误,point指针指向的是不可改变内容的空间,不能向空间重新赋值的;
还有一种指向const对象的指针表达方式:
char const * point;
小心得:只有const 和 point 之间没有任何插入项时才是常量指针。
相关文章推荐
- 指向const对象的指针和const指针 (转)
- “指向const对象的指针”和“const指针”
- 指向const对象的指针和const指针
- 指向const对象的指针和const指针
- const指针与指向const对象的指针
- [转载]如何区分“指向const对象的指针”和“const指针”?
- 指向const对象的指针和const指针
- const指针和指向const对象的指针
- (转)const和指针(指向const对象的指针、const指针)
- 如何区分“指向const对象的指针”和“const指针”?
- 指向const对象的指针 const指针
- 指向const对象的指针 和 const指针
- 指向const对象的指针 和 const指针
- “指向const对象的指针” 和 “const指针”
- 关于const指针和指向const对象的指针的初始化问题
- 指向const对象的指针 const指针
- 指向const对象的指针 const指针
- c++ const指针和指向const对象的指针
- 指向const对象的指针和const指针
- [指向const对象的指针] 和 [const指针]