const char*, char* const区别

const char* p

const修饰char*, 指针的内容不可改, 也可以写成char const* p
char c = '0';
char c2 = 'a';
const char* p1 = &c; //p1为指针变量, 变量值是char类型变量的地址, const修饰char*, 表示指针内容(*p1)不可变
//*p1 = 'a'; //修改指针内容, 编译错误
c = 'b';
printf("%c\n", *p1);
p1 = &c2; //变量p1的值可以变
printf("%c\n", *p1);

 

char * const p

const修饰p, 变量p的值不可改
char c = '0';
char c2 = '1';

char* const p1 = &c;
*p1 = 'a';
//p1 = c2; //编译错误, 变量值不可改

 

参考

 
 
posted @ 2025-02-13 22:11  yanghui01  阅读(128)  评论(0)    收藏  举报