看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: Win10, Linux, ...) Win10 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) DEV C++ 問題(Question): 各位版友們好,小弟想用C++跑物理相關的運算 但因為執行效率差,所以加入了openMP這個模組來做平行處裡 當我程式是這樣寫時,並沒有問題: https://imgur.com/6F6pSD5.png
但如果把函數回傳的值丟進陣列裡,就會出現xxx.exe已停止運作等錯誤訊息: https://imgur.com/yzHzE2P.png
請問這是為什麼呢? 還麻煩各位版友們了~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.176.203 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1519654577.A.456.html ※ 編輯: paddyzb (42.73.176.203), 02/26/2018 22:16:50
james732: 你的a是什麼東西?另外建議不要用截圖的方式貼程式 02/27 00:17
iFEELing: 把g()拿掉看會不會過 會的話就把g()貼上來 02/27 00:22
tcn1john: a[i] 超出可用範圍吧 02/27 08:33
skyrimrvks: a的空間有至少202以上嗎? 02/27 20:43
skyrimrvks: 至少201 02/27 20:44
joe820730: 陣列的第一個位置是a[0]不是a[1],你這樣寫到a[200]的 02/27 23:19
joe820730: 時候實際上是存取到a陣列的第201的位址,所以如果你的 02/27 23:20
joe820730: 陣列a[]只給200,那程式就會存取到不該存取的地方了 02/27 23:20