Re: [問題] 有關於迴圈讀取中途出錯

看板Fortran作者 (降太)時間10年前 (2014/05/02 14:00), 編輯推噓0(006)
留言6則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《zmack0905 (降太)》之銘言: : 為了配和研究需要寫了一個讀取程式 : 因為分日,時,物種等等,共寫了幾層迴圈 : 格式都是相同的(所以才能迴圈) : 不過卻在某一層忽然停止(大概讀取進度70%的時候) : 出現(24),end of file 的問題 : 照理講因為格式都一樣(每天每個小時每個物種都是一樣的資料寫法) : 如果有問題應該前面就出錯了,不至於到中段以後才抱錯 : 現在就是遇到這樣的問題,希望各位能給一點建議 : p.s 以前的實驗結果都沒問題,證明這隻程式的確能用的 : 不過要是實驗數據有問題,照理講模擬還沒結束就會報錯了... 後來不管這個問題,發現是當數據特別不一樣的時候會出這種問題 今天又再一次遇到,想說在READ加上IOSTAT來檢查 結果...我只是把每個可能出錯的READ在後面括號裡面加上iostat=stat 就都可以了@@!? 我也不知道怎麼回事.我的數據是用科學記號寫,應該沒有數據變化太大格子跑掉的問題? 如果有人有興趣我可以提供程式碼跟可以pass,不能pass的數據資料@@ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.120.29.185 ※ 文章網址: http://www.ptt.cc/bbs/Fortran/M.1399010423.A.698.html

05/02 16:54, , 1F
因為加了iostat之後,read出錯程式不會停。
05/02 16:54, 1F

05/02 16:55, , 2F
所以就算讀不到東西,不去處理iostat的話程式還是會繼續跑。
05/02 16:55, 2F

05/02 19:30, , 3F
所以說如果會出錯的那一圈(其實我不確定哪圈)加上了
05/02 19:30, 3F

05/02 19:31, , 4F
就會無視錯誤跑下去?(可是我有設定stat>0要print東西..
05/02 19:31, 4F

05/02 19:31, , 5F
他也\沒反應)
05/02 19:31, 5F

05/02 22:28, , 6F
iostat讀到檔尾會是-1(印象中)
05/02 22:28, 6F
文章代碼(AID): #1JOpHtQO (Fortran)
文章代碼(AID): #1JOpHtQO (Fortran)