1 、
const int i=0;
int *j=(int *)&i;
*j=1;
cout<<i<<*j<<endl;
答案i为0,*j为1。
2、
char * const p="hello";
*p='W';
cout<<*p<<endl;
编译通过,运行出错。
const修饰指针,指针不能改变指向,但是可以通过指针改变变量值。但由于指针p指向字符串,字符串位于常量区,所以不可修改,运行出错。
1 、
const int i=0;
int *j=(int *)&i;
*j=1;
cout<<i<<*j<<endl;
答案i为0,*j为1。
2、
char * const p="hello";
*p='W';
cout<<*p<<endl;
编译通过,运行出错。
const修饰指针,指针不能改变指向,但是可以通过指针改变变量值。但由于指针p指向字符串,字符串位于常量区,所以不可修改,运行出错。