注册 登录
编程论坛 C++教室

const char* p 与char* const p的区别

tsyking 发布于 2013-10-30 09:49, 832 次点击
const是一个C语言的关键字,它限定一个变量不允许被改变;
const char *p  //定义一个指向const char 的指针,则指向的char对象是固定的,不允许修改的,但指针p是可以修改的
比如 p=0;//是可以的,只是修改指针本身的值。
     *p = 0;不允许的,修改了指针p指向的内容,而p指向的对象是const的
char * const p;//是声明 一个本身为const 的p 指向char 类对象
比如 *p=0;//是可以的,只是修改指针本身的值。
     p = 0;不允许的,修改了指针p本身,而p本身是const的
3 回复
#2
tsyking2013-10-30 09:49
可以试一试
#3
peach54602013-10-30 10:01
科普?
#4
a5929631442013-10-30 10:49
比如 p=0;//是可以的,只是修改指针本身的值。
     *p = 0;不允许的,修改了指针p指向的内容,而p指向的对象是const的
比如 *p=0;//是可以的,只是修改指针本身的值。
     p = 0;不允许的,修改了指针p本身,而p本身是const的
一直不明白 指针的意思  *p=0 和 p=0 哪一个是修改p本身,哪一个是修改p指向的内容?
1