#include <iostream>
using namespace std;
int main(void)
{
const int a = 10;
int * p = (int *)(&a);
*p = 20;
cout<<"a = "<<a<<", *p = "<<*p<<endl;
return 0;
}
#include <iostream> void main() { int const a = 10; int *p = (int*)&a; *p = 20; cout<<"&a="<<&a<<endl; cout<<"p="<<p<<endl; cout<<"a="<<a<<endl; cout<<"*p="<<*p<<endl; }
这个"常量折叠"是 就是在编译器进行语法分析的时候,将常量表达式计算求值,并用求得的值来替换表达式,放入常量表。可以算作一种编译优化。