軟體是devc++
代碼是
int n=10;
int a[n]={1,2};
printf("%d",a[9]);
結果是0
uj5u.com熱心網友回復:
這個全符合規則,定義n=10,a[n]就相當于a[10],陣列下標0-9,然后最后輸出a[9],完美。uj5u.com熱心網友回復:
gcc 的黑魔法。uj5u.com熱心網友回復:
這跟編譯器選項有關。有些編譯器會默認對變數、陣列進行初始化。比如,同樣的: int a[10]; 有些編譯器能通過,有些則會報“變數未初始化”的錯誤。
int a[10] = {}; // {}是標準語法,對陣列進行初始化。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/267712.html
標籤:新手樂園
上一篇:VC error C2660: 'ge' : function does not take 3 parameters
下一篇:【C語言求助】嵌套回圈問題
