[問題]陣列大小問題

看板C_and_CPP作者 (konomi00429)時間14年前 (2010/08/12 13:00), 編輯推噓3(3023)
留言26則, 6人參與, 最新討論串1/1
遇到的問題: (題意請描述清楚) 在最上面時,我已經將size大小設為400,照理來說應該可以跑出400*400的陣列, 但我的程式只要超過2000即會出錯。 程式碼:http://nopaste.csie.org/31518 補充說明: -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.134.72.166

08/12 13:03, , 1F
置底文十二誡裡的第十一誡看一下
08/12 13:03, 1F

08/12 13:20, , 2F
陣列其實不是很好用 0.0
08/12 13:20, 2F

08/12 13:25, , 3F
我的問題有方法解決嗎?我看了十一誡還是不懂@@
08/12 13:25, 3F

08/12 13:30, , 4F
也就是說你該改用動態記憶體配置了, 另有valarray、
08/12 13:30, 4F

08/12 13:30, , 5F
vector等容器可以選擇
08/12 13:30, 5F

08/12 13:34, , 6F
最懶惰(但可能是最差)的解法是改成全域變數 XD
08/12 13:34, 6F

08/12 13:36, , 7F
我寫的是C語言的話,能用valarray、vector?
08/12 13:36, 7F

08/12 13:40, , 8F
你可以用malloc XDDD
08/12 13:40, 8F

08/12 13:42, , 9F
而且你都#include<iostream>了 這不能算C了吧
08/12 13:42, 9F

08/12 13:44, , 10F
最好是寫C語言 = =
08/12 13:44, 10F

08/12 13:46, , 11F
有的編譯器是很聰明的, 你副檔名.cpp 他就當C++原始碼
08/12 13:46, 11F
※ 編輯: konomi00429 來自: 140.134.72.166 (08/12 13:55)

08/12 13:55, , 12F
不寫C++的話就用malloc吧
08/12 13:55, 12F

08/12 13:56, , 13F
可是我同學跟我做差不多的題目,他用同樣手法就不會
08/12 13:56, 13F

08/12 13:56, , 14F
有這個問題
08/12 13:56, 14F

08/12 13:57, , 15F
對了,可以請你附上你的編譯環境、顯示的錯誤訊息嗎?
08/12 13:57, 15F

08/12 13:57, , 16F
編譯時不會出錯
08/12 13:57, 16F

08/12 13:58, , 17F
同學的程式碼:http://nopaste.csie.org/5f32b
08/12 13:58, 17F

08/12 14:00, , 18F
我們兩個的差異點是?
08/12 14:00, 18F

08/12 14:06, , 19F
我是用DEV-C++寫的
08/12 14:06, 19F

08/12 14:07, , 20F
十一誡試看看
08/12 14:07, 20F

08/12 15:41, , 21F
編譯器的關係...我用VC跑你跟你同學的都不能跑...
08/12 15:41, 21F

08/12 15:42, , 22F
用Dev C你跟你同學的都可以跑...
08/12 15:42, 22F

08/12 15:42, , 23F
可是DEV-C++又可以執行 冏
08/12 15:42, 23F

08/12 15:43, , 24F
建議記憶體用malloc宣告...或是改成static的...應該能解決
08/12 15:43, 24F

08/12 15:46, , 25F
另外你第13行的存取超出陣列範圍了...
08/12 15:46, 25F

08/12 15:49, , 26F
VC規定的比較嚴格...但是寫完程式的效能比較高...
08/12 15:49, 26F
文章代碼(AID): #1COu051C (C_and_CPP)