我有以下代碼:指向const的指針。指針改變,但const的沒有變化
int main(void) {
const int a = 2;
int *p = (int *)&a;
++*p;
cout << a << endl << *p << endl;
cout << &a << endl << p << endl;
return 0;
}
指針指向const int a
但是當我改變*指針。 *p = 3
a = 2
;
雖然p和a具有相同的地址。
我不知道如何創建這個結果。 任何人都可以爲我解釋。謝謝!
未定義的行爲意味着任何事情都可能發生:) –