//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄
一、概念
1.const写法
(1)const char *p
(2)char const *p
(3)char * const p
二、const写法区别
如果const位于 * 的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;
如果const位于 * 的右侧,则const就是修饰指针本身,即指针本身是常量。
(1)const char *p
一个指向char类型的const对象指针,p不是常量,我们可以修改p的值,使其指向不同的char,但是不能改变它指向非char对象,如:
const char *p;
char c1='a';
char c2='b';
p=&c1;//ok
p=&c2;//ok
*p=c1;//error
(2)char const *p
(3)char * const p
这两个好象是一样的,此时*p可以修改,而p不能修改。
(4)const char * const p
这种是地址及指向对象都不能修改。
网友评论
如果const位于 * 的右侧,则const就是修饰指针本身,即指针本身是常量。”的结论是不是冲突啊?