const int a = 3; int* p = (int *)&a;*p = 4;printf("a-------%d------", a); printf("*p-------%d------", *p); printf("&a-------%d------", (int)&a); printf("p-------%d------", (int)p);
輸出:
a-------3------ *p-------4------ &a-------1606416268------ p-------1606416268------
問(wèn)題是 const
修飾a
變量后,a
不能修改,但是可以隱式修改a
的值,就是用指針。 我用指針修改了值,為什么輸出的時(shí)候 a
沒(méi)有改變。*p
的值改變了。