Re: [問題] VS編譯相關

看板C_and_CPP (C/C++)作者 (Neisseria)時間10年前 (2016/03/09 10:08), 編輯推噓1(109)
留言10則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《ericrobin ()》之銘言: : 首先是 array 的設定, 我希望能依照餵入的值來決定大小: : int n, m; : scanf("%d\n", &n); : scanf("%d\n", &m); : int p = m * m; : int a[n][m][m]; : int b[p]; : int result[n]; : VC++ 在後三式會顯示錯誤 "運算式必須要有常數值" : 想請問要做到我需求的話該如何寫才好? 可能是 scanf 那裡出了問題,把 "\n" 拿掉再跑跑看 試了一下,可參考跑得動的例子 https://pastebin.com/5dapQUE4 $ g++ -o array_size array_size.cpp -std=c++14 $ ./array_size Input n: 3 55 69 23 # numbers are randomly assigned 不過我記得 array 的長度不能用變數,但是跟這裡範例不符 再請各位大大講一下是怎麼回事好了 : 這幾天研究g++好久還是不知道怎用 走投無路才裝了龐大的VS..結果還是沒很順囧 g++ 應該沒那麼難用才是 雖然參數很多,但基本的編譯步驟很簡單的 可能還是要看一下實際的錯誤訊息才知道是怎麼回事 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.71.94.1 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1457489319.A.579.html

03/09 10:19, , 1F
C++標準是說不行 可是G++有支援
03/09 10:19, 1F

03/09 10:35, , 2F
謝謝 scanf那邊確實多了\n
03/09 10:35, 2F

03/09 10:41, , 3F
將array 修改成常數也順利能跑出來
03/09 10:41, 3F

03/09 10:44, , 4F
不過另一個問題是我設定到 int a[10][180][180]
03/09 10:44, 4F

03/09 10:45, , 5F
這樣的大小 exe馬上就會說停止運作
03/09 10:45, 5F

03/09 10:46, , 6F
很納悶它上限有那麼低嗎....
03/09 10:46, 6F

03/09 11:23, , 7F
這個大小要用malloc配置記憶體
03/09 11:23, 7F

03/09 12:02, , 8F
照樓上方法做問題就解決了XD
03/09 12:02, 8F

03/09 13:42, , 10F
我記得是stack size的限制啦
03/09 13:42, 10F
文章代碼(AID): #1MtuMdLv (C_and_CPP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #1MtuMdLv (C_and_CPP)