const char*和char* const的区别
Posted hustwx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了const char*和char* const的区别相关的知识,希望对你有一定的参考价值。
const char*
1、字符串相对于指针是常量,但字符串本身不是常量
2、指针能够被重定向
int main(){ char str1[] = "hello world"; char str2[] = "ni hao"; const char* ptr = str1; //ptr[0] = ‘H‘;//字符串相对于指针是常量 str1[0] = ‘H‘;//但字符串本身不是常量 cout << str1 << endl; ptr = str2;//可以更改指针指向 cout << ptr << endl; return 0; }
char* const
1、指针不能够被重定向
int main(){ char str1[] = "hello world"; char str2[] = "ni hao"; char* const ptr = str1; ptr[0] = ‘H‘; cout << str1 << endl; str1[0] = ‘h‘; //ptr = str2;//不可以更改指针指向 cout << ptr << endl; return 0; }
另外:char const*=const char*
以上是关于const char*和char* const的区别的主要内容,如果未能解决你的问题,请参考以下文章
深入理解const char*p,char const*p,char *const p,const char **p,char const**p,char *const*p,char**const p
深入理解const char*p,char const*p,char *const p,const char **p,char const**p,char *const*p,char**cons(示例
const char **,char *const *,char ** const