→ school4303: calloc用法是不是錯了 12/04 15:44
→ nh60211as: 第二個argument是每個元素的大小 12/04 15:47
→ nh60211as: 比較像是記憶體不夠用,回傳了NULL POINTER 12/04 15:51
→ sarafciel: 你這個不是50^3,是(50^3)^2 約等於14.5G個element 12/04 17:10
→ sarafciel: 保守點拿32bit機器的4byte指標來算 你要了58G左右 12/04 17:14
→ sarafciel: 咦等等 你最後一個不是指標而是double 那就是116G了XD 12/04 17:27
→ eagle32: 的確我錯用 calloc 了.導致我要了大約126G的記憶體 12/04 21:54
→ poyenc: pData 的初始化也有問題, 只是指標大小相同所以算出來位址 12/04 22:46
→ poyenc: 剛好是對的 12/04 22:46
→ poyenc: 簡單說以一個整數 c 來說, array + c 代表的涵義是從array 12/04 23:02
→ poyenc: 指向的位置開始, 往後算 c 個 sizeof(*array) 物件之後的 12/04 23:02
→ poyenc: 位址, 這裡的 sizeof(*array) == sizeof(double**), 表示 12/04 23:03
→ poyenc: array + c 實際上是在預留 c 個 double** 的空間, 這部分 12/04 23:04
→ poyenc: 沒問題; 但在初始化 pData 的時候你用的方法卻是和 ppData 12/04 23:05
→ poyenc: 一樣, 多預留 l*m 個 double** 空間給 double* 用 12/04 23:06
→ eagle32: 有看過指標指向多維陣列的圖解. 不過一下子找不到了 12/04 23:08
→ eagle32: 像p大說的.我這個部分也理解錯了 12/04 23:09
推 OhNo386: 指標的指標其實很慢,用一維表示二維或多維會快很多 12/08 08:07