const的疑问
- C/C++ code
const char* a; a="123123"; printf("!!!Hello World!!!%s",a); /* prints !!!Hello World!!! */ return EXIT_SUCCESS;
这样通过了
- C/C++ code
const int a; int=123; printf("!!!Hello World!!!%d",a); /* prints !!!Hello World!!! */ return EXIT_SUCCESS;
报错了
[解决办法]
const char* a;
意为a指向的内存不能改变,a本身可以改变
要限制a不能改变,写法是char * const a;
[解决办法]
const char* a声明后不能改变的是a所指向的内容,a本身是可以改变的。
[解决办法]
http://www.doc88.com/p-496333268831.html
这个讲解的很详细
[解决办法]
const的意思是告诉编译器,其内容不希望被改变
楼主代码的意思是a所指向的内容不希望被改变
如果其值有可能改变或者已经被改变
这与const是矛盾的
楼主贴的代码是不是有问题?
尤其是第2段代码