笔试之const问题

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指向字符串,字符串位于常量区,所以不可修改,运行出错。

原文地址:https://www.cnblogs.com/Tang-tangt/p/9073814.html