English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

我在宣告陣列的時候,如果宣告大一點時,Debug時就會直接跳出錯誤的視窗,宣告小一點的空間的話就可以跑了(P.S:我前面程式也佔用蠻大的空間去了,而我宣告的方式不是用動態配置的方法)~請問是什麼原因呢??要如何解決??會不會是記憶體不足阿~謝!!

2006-08-17 15:45:21 · 1 個解答 · 發問者 瑋倫 1 in 電腦與網際網路 程式設計

float data[594][8][8];
int R_length[7000],y_ac_vlc[3500],y_ac_huffman[15000];
for(iz=0;iz

2006-08-18 07:32:45 · update #1

1 個解答

大陣列不建議用宣告的,用動態配置會比較好。
至於是不是記憶體不足,要看你用多大的陣列。有時還要看你用啥 Compiler。
將你的陣列大小、型態、Compiler 名稱公佈出來,可能較容易幫你。

2006-08-18 21:57:44 補充:
現代的電腦,int是 4 byte。你若用不到那麼大的數,改用 short。但,你的問題應該是出在你的 data[594][8][8],它要148.5 K。有的compiler的陣列大小只支援到 64K。你用啥 compiler?用 printf("%u", sizeof(data)) 或 %lu 試試看,它到底有沒有配足 152064 給你。不行的話,你可能要自己寫 3 維的 動態陣列了。

2007-09-24 00:22:00 補充:
關於 動態配置 與 二維 的問題,日前寫了一篇較詳細的文章。
有興趣了解一下的可以去看看。^_^

http://www.phpbbserver.com/graphicsparalle/viewtopic.php?t=128

2006-08-17 18:57:19 · answer #1 · answered by ? 7 · 0 0

fedest.com, questions and answers