#include <stdio.h> int main() { const char * const_char_ptr = "hello world!\n"; char * ptr = "good night!\n"; printf("const_char_ptr = %s\n", const_char_ptr); const_char_ptr = ptr; const_char_ptr[1] = 'X'; printf("%c\n", const_char_ptr[1]); getchar(); return 0; }
如上程序,编译的时候会报错:const_char_ptr[1] = 'X'---->>无法改变const类型
也就是说,一个字符串指针一旦被声明为指向const类型,那就在任何情况下都无法通过*const_ptr这种方式改变它指向的内容,即使const_ptr本身已经被改变了。