const char * 、char const *、 char * const 三者的区别

const char * 、char const *、 char * const 三者的区别

可以参考大神博客,点击前往

假设 p 指针指向的内容是 str

  1. const char *p = str :是定义一个指向字符常量的指针
    p 自身的值可以修改
    不能通过 p 修改 p 指向的值(也就是str的值)
    可以通过 str 修改自身的值
  2. char const *p :同上
  3. char * const p :是定义一个指向字符的指针常量
    p 自身的值不能修改
    可以通过 p 修改 p 指向的值(也就是str的值)
    可以通过 str 修改自身的值

综上,发现这种 const 语句只是对指针 p 做了限制,并不影响 str 本身的功能

你可能感兴趣的:(C++笔记,c++,const,指针)