Re: [問題] VC++ 一維陣列太大

看板C_and_CPP作者 (CA)時間14年前 (2011/05/31 22:22), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《kingp (我很窮)》之銘言: : 請問一下 由於我的一維陣列相當大 : 因此選擇用動態一維陣列來做 以下是我的程式碼 : 大致上是參考GOOGLE的一些範例 : int m=0, A=220000; : int *M = new int [A]; : for(m=0; m<A; m++); : { : M[m] = new int[A] ; <-------- ERROR new int[A] => int * M[m] => int 這個錯誤訊息和大小無關, 你的 type 根本不對 : } : for(m=0; m<A; m++); : { : delete [] M; : } : delete M; : 不過compiler會顯示 "無法由 'int *' 轉換為 'int' " : 請問我的問題出在哪呢?? 你要把一維當成二維用, 那你的一維長度就是二維的維度乘積 那兩個為了 new 和 delete 而寫的 for 是不必要的 假設圖的維度是 row 和 column 則 int A = row * column 以原本的 (x,y) 對應到一維座標是 M[y][x] === M[y*column+x] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 175.96.116.187 ※ 編輯: legnaleurc 來自: 175.96.116.187 (05/31 22:23)

06/01 09:41, , 1F
推一下
06/01 09:41, 1F
文章代碼(AID): #1DvFcNCT (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1DvFcNCT (C_and_CPP)