Re: [問題]Segmentation Fault
※ 引述《linigirl ()》之銘言:
: 因為實驗室的環境,只能遠端到工作站在Linux作業系統下用G77 compiler,
: compile結果沒問題,但是執行後卻出現Segmentation Fault,
: 上網google,建議命令列輸入ulimit -s unlimited,
: 也就是和本版前面文章"Stack Flow"記憶體大小改成unlimited,
: 但執行後仍然有segmentation fault的問題,
: 而且我寫的程式碼也沒有矩陣這樣的東西,
: 不知道還有可能是什麼問題造成segmentation fault,
: 請問各位有經驗的人士,能幫我這初學者解答嗎?
: 通常是什麼問題會造成這樣的錯誤訊息呢?
: 謝謝
Segmentation fault只有一個情況才會出現
那就是你的程式在記憶體存取時候管到不該管的地方
嘗試提取別的程式使用的記憶體裡面的資料
被作業系統發現強制踢出
(個人習慣講「程式撞牆」)
不一定只有array提取會這樣
Linked List也常常遇到
某些Segmentation fault有可能從compiler上抓到
不過樓主用gfortran編譯起來還抓不到的話
代表compiler沒有找到
compiler的功能只是檢查宣告和語法有沒有問題而已
然後編譯成X86或Assembly Language 再轉成機器語言
遇到Segmentation fault的解決辦法只有一個:
請檢查程式,想想看那一個環節提取記憶體錯誤讓你的程式撞牆
update:剛才測試,某些segmentation fault是可以抓到...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.135.31.3
※ 編輯: shrekwang 來自: 140.135.31.3 (06/29 02:36)
※ 編輯: shrekwang 來自: 140.135.31.3 (06/29 02:47)
※ 編輯: shrekwang 來自: 140.135.31.3 (06/29 02:49)
※ 編輯: shrekwang 來自: 140.135.31.3 (06/29 11:04)
→
06/29 12:04, , 1F
06/29 12:04, 1F
→
06/29 12:05, , 2F
06/29 12:05, 2F
→
06/29 12:06, , 3F
06/29 12:06, 3F
→
06/29 12:07, , 4F
06/29 12:07, 4F
→
06/29 12:07, , 5F
06/29 12:07, 5F
→
06/29 12:14, , 6F
06/29 12:14, 6F
→
06/29 12:17, , 7F
06/29 12:17, 7F
→
06/29 13:36, , 8F
06/29 13:36, 8F
推
06/30 13:32, , 9F
06/30 13:32, 9F
→
06/30 13:33, , 10F
06/30 13:33, 10F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章