[問題] 為什麼new過的指標delete後還印的出值
小弟有個很基本的問題想請教大家
int *a=new int[2];
a[0]=10;
a[1]=11;
delete [] a;
cout << a[0] << " " << a[1] << endl;
cout << *a << " " << *(a+1) << endl;
執行結果:
10 11
0 11
問題一: 為什麼a都delete掉了還印的出東西?
問題二: 為什麼a[0]和*a結果不一樣? 我一直以為這兩個寫法是一樣的意思
後來我又做了一些測試, 我在delete [] a 前一行加上int *b=a;
最後改輸出cout << b[0] << " " << b[1] << endl;
執行結果
0 11
結果又更加讓我迷惑了, 請各位導正我的觀念, 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 128.54.5.185
→
08/30 00:43, , 1F
08/30 00:43, 1F
→
08/30 00:43, , 2F
08/30 00:43, 2F
→
08/30 00:44, , 3F
08/30 00:44, 3F
→
08/30 00:45, , 4F
08/30 00:45, 4F
→
08/30 00:45, , 5F
08/30 00:45, 5F
推
08/30 00:47, , 6F
08/30 00:47, 6F
→
08/30 00:47, , 7F
08/30 00:47, 7F
→
08/30 00:47, , 8F
08/30 00:47, 8F
→
08/30 00:48, , 9F
08/30 00:48, 9F
→
08/30 00:49, , 10F
08/30 00:49, 10F
→
08/30 00:55, , 11F
08/30 00:55, 11F
→
08/30 00:56, , 12F
08/30 00:56, 12F
→
08/30 01:34, , 13F
08/30 01:34, 13F
→
08/30 02:11, , 14F
08/30 02:11, 14F
→
08/30 02:12, , 15F
08/30 02:12, 15F
→
08/30 09:33, , 16F
08/30 09:33, 16F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章