「c語言陣列宣告」的推薦目錄:
- 關於c語言陣列宣告 在 コバにゃんチャンネル Youtube 的最讚貼文
- 關於c語言陣列宣告 在 大象中醫 Youtube 的最佳解答
- 關於c語言陣列宣告 在 大象中醫 Youtube 的最佳解答
- 關於c語言陣列宣告 在 [計程] [C] 陣列宣告太大就當掉的原因。 - 看板b02902HW 的評價
- 關於c語言陣列宣告 在 【C 語言入門】14 - 陣列簡介 - YouTube 的評價
- 關於c語言陣列宣告 在 C語言-陣列與字串 - 鋼彈盪單槓 的評價
- 關於c語言陣列宣告 在 cAndC-/6陣列/README.md at teacher - GitHub 的評價
- 關於c語言陣列宣告 在 c未知陣列大小2023-精選在Instagram/IG照片/Dcard上的焦點 ... 的評價
- 關於c語言陣列宣告 在 #請益c陣列可以宣告到多大 - 軟體工程師板 | Dcard 的評價
- 關於c語言陣列宣告 在 C 陣列(Array)與結構(Structure)筆記 - 隨意窩 的評價
c語言陣列宣告 在 大象中醫 Youtube 的最佳解答
c語言陣列宣告 在 大象中醫 Youtube 的最佳解答
c語言陣列宣告 在 【C 語言入門】14 - 陣列簡介 - YouTube 的推薦與評價
【 C 語言 入門】14 - 陣列 簡介. Feis Studio. Feis Studio. 55.5K subscribers. Join. Subscribe ... 54K views 6 years ago C 語言 入門. Show less. ... <看更多>
c語言陣列宣告 在 C語言-陣列與字串 - 鋼彈盪單槓 的推薦與評價
陣列. 如果是需要使用到多個變數的場合,例如統計全班成績,宣告這麼多的變數儲存成績是不實際的. 所以C語言提供陣列,方便你宣告一個以索引為識別的 ... ... <看更多>
c語言陣列宣告 在 [計程] [C] 陣列宣告太大就當掉的原因。 - 看板b02902HW 的推薦與評價
同學好,
有同學反應當陣列宣太大程式就會當掉。例如
int arr1[20][20]; 這樣做沒問題,測資也通過。
int arr2[512][512]; 這樣做程式在自己電腦竟然直接當掉,但傳
到judgegirl是全對5分。
這是由於記憶體大小的關係。sizeof(arr2)是4x512x512,大約1MB
有些比較差的作業系統(比如Windows)限制只能用不超過1MB記憶體
所以arr2會導致值程式當掉。如果你使用Linux,Mac等,arr2就沒
問題。
因此如果同學在Windows下寫程式,遇到這問題解法有:
1. 捨棄Windows,使用更適合寫程式的作業系統如Linux
2. 在編譯時加上參數 -Wl,--stack,8000000 例如
gcc -Wl,--stack,8000000 hw10.c
這意思是告訴編譯器這個程式要用8000000(大約8MB)的記憶體,而
不受限於原本的1MB,當然8000000也可以改成其他你喜歡的數字,
只要記得比你要用到的記憶體量大。
3. 如果你很確定你寫的程式碼是正確的,當掉的唯一理由是因為
陣列太大。那就乾脆直接上傳到judgegirl, 如果你真的是對的,
judgegirl不會因為這種陣列理由當掉,她一定會還你清白的!
judgegirl宣告到1024x1024都還沒問題。
4. 使用以後才會教到(或許這學期教不到)的語法、程式技巧。
例如static變數,也就是在宣告前加static這個字:
static int arr2[512][512]; //這樣就不會當掉了,很單純吧!
或是全域變數,把陣列的宣告放在main()的前一行:
int arr2[512][512]; //移到main前面就不會當掉了!
main()
{
....
還有很多其他還沒教的方法,但詳細理由現在無法解釋,
需等各位學到更後面。但這封信內已經提供數種解法了。
如果各位對這問題還有疑慮,請寄信問我。
by 江懿
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.162.101.198
... <看更多>