0

これはダングリングポインターですか?

int x = 25;
int** arr = new int*[5];
*arr[1] = x;

これが機能しない理由がわかりません... *arr[1] は単なるポインタであり、有効なメモリ アドレスを指しています。

4

1 に答える 1

5

arr[1]でありint*、初期化されていません。それを逆参照するのは未定義の動作です。

と言うとarr[1] = &x;arr[1]を指し、25 にxなり*arr[1]ます。


終わったら忘れないでくださいdelete [] arr;

于 2013-02-18T21:39:00.307 に答える