看板 C_and_CPP 關於我們 聯絡資訊
code 如下 ---------------------------------------- #include<iostream> using namespace std; int main(){ int count; while(cin>>count){ int array[count][3]; for(int i=0;i<count;i++){ for(int j=0;j<4;j++){ cin>>array[i][j]; } } for(int i=0;i<count;i++){ for(int j=0;j<4;j++){ cout<<array[i][j]; } cout<<endl; } } } ---------------------------------------------------- 如果這樣寫 當輸入為 2 1 2 3 4 2 3 4 5 輸出會變成 1 2 3 2 2 3 4 5 ---------------- 第一句的最後居然會被第二句的前面覆蓋 這究竟是為什麼呢?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.31.158
james732:int array[count][3]; 先跟你說這裡的問題很大 11/05 19:03
james732:http://nopaste.csie.org/546f3 參考看看 11/05 19:11
diabloevagto:陣列要在一開使就宣告固定大小 11/05 19:23
jehovah:j超出array範圍了吧 11/05 19:24
james732:我在一樓推的問題很大 就包括那個 [3] 也是錯的 XDDD 11/05 19:28
killntd:不懂我的問題出在哪... 冏 11/05 19:50
killntd: **array 是什麼意思 我要哭哭了XD 11/05 19:52
killntd:看來是指標的指標 11/05 19:57
stupid0319:等到標準C把動態陣列宣告列為標準時,這樣就沒有問題了 11/05 20:05
VictorTom:新的C標準已經支援VLA啦, 但是C++還沒有, 而原po似乎是 11/05 22:17
VictorTom:寫C++....XD 11/05 22:17
otira:vector<vector<>>呢 11/05 22:41
xatier:其實C99也算十年前的東西了XD 11/08 07:34