问题遇到的现象和发生背景
测试强行用指针修改const变量底层发生的变化。
问题相关代码,请勿粘贴截图
#include<bits/stdc++.h>
using namespace std;
int main(){
const int a = 2;
cout<<&a<<endl;
int *p = (int*)&a;
*p = 3;
cout<<"二者的地址"<<endl;
cout<<&a<<endl<<p<<endl;
cout<<"二者的值:"<<endl;
cout<<a<<endl<<*p<<endl;
return 0;
}
运行结果
问题
为什么取址相同的情况下,取值不同?