const char * 和 char const * 和 char * const 区别

来源:互联网 发布:淘宝怎么p图 编辑:程序博客网 时间:2024/06/07 03:32
  

char * const   [指向字符的静态指针]

英文[ const pointer to char ]

const char * [指向静态字符的指针]

[pointer to const char]

 

那么现在东西很明显了,什么可以改变什么不可以

很明显,第一种指针是不能变的,as it is const

第二种指针可以变,但是字符不能变,它是const char

它的好处是参数不易出现问题,有很好的稳定性。

 

好了我么总结一下,const char *char const* 效果一样,都是不允许修改指针指向的地址空间的值,即把值作为常量,而char * const则是不允许修改指针自身,不能再指向其他地方,把指针自己当作常量使用。需要注意的是,使用char * const 定一个常量指针的时候一定记得赋初始值,否则再其他地方就没法赋值了。