編譯器:dev-c++
int iArray[3][4];
iArray[3][4]=1000;
printf("%d",iArray[3][4]);
改變 iArray[3][4]的值為1000 輸出的結果仍然為1000 請問這個是什麼原因呢?
我是直接給越界的下標進行了賦值 以前以為只要是下標越界了 輸出的都是無意義的數字 其實那是因為沒有給越界的下標賦值 對嗎 越界的下標為什麼還能正常使用呀
使用越界的數組元素是不安全的,因為系統分配給你的最後一個元素是iArray[2][3];
iArray[3][4]不是系統分配給你的空間,你賦值了,如果該空間是別的程序使用了,就會造成沖突。
所以該空間被你偷著用了,會不會出錯,就看你的運氣了。