const 的问题?
vc6 有下面一段代码:
void main()
{
const long i=100;
long * ptLng=NULL;
long j=0;
cout<<i<<endl;
ptLng=(long *)&i;
*ptLng=1000;
cout<<*ptLng<<endl;
cout<<i<<endl;
cout<<ptLng<<":"<<&i<<endl;
}
i是const值,ptLng是指向i的指针,通过改变 *ptLng的值,应该可以改变i的值,
这个在内存中可以清楚的看出,但实际上i的值输出的却没有变?请问为什么会这样?