指针类型的常量 能否改变它所指对象的值?
飞飞狐 2007-03-15 01:27:19 char * const name2="test"; 这是指针类型的常量。不能改变指针本身的值,不能指向其他对象。
const char *name2="test";是指向常量的指针,不能改变所指对象的值,但可以改变指针本身,指向其他对象
我想试试指针常量,能不能改变它所指对象的值,代码如下:
char * const name2="test";
*name2='f';
cout<<name2<<endl<<*name2<<endl;
debug出现正确结果:name2为“fest”。但是运行时出“段错误” ,为什么?
debug信息如下:
Program received signal SIGSEGV, Segmentation fault.
main () at t3.cpp:37
37 *name2='f';