2
A
回答
11
使用相同的流調用fclose
兩次是未定義行爲 - 很可能是崩潰。有沒有辦法來檢查是否FILE*
已被關閉,所以安全的解決方案是,只要它是封閉設置指針爲NULL:
fclose(fh);
fh = NULL;
來源:「指針到一個文件對象的值關聯文件關閉後不確定「(C草案標準)。 「在調用fclose()之後,任何流的使用都會導致未定義的行爲。」 (Single UNIX®規範)。
相關問題
- 1. ElasticSearch - transllog已經關閉
- 2. 檢測文件已關閉
- 3. Lua需要一個}來關閉一個{已經關閉的
- 4. 基礎連接已經關閉:連接被關閉意外
- 5. 新的FileStream已經關閉/處理?
- 6. 的Tomcat6 - 連接已經關閉
- 7. 文件沒有被寫入,已經關閉文件
- 8. java.io.IOException:BufferedInputStream已關閉
- 9. www.sandbox.itunes.apple.com已關閉
- 10. DSRA9110E:ResultSet已關閉
- 11. Zip Outputstream已關閉。 java.io.IOException:流關閉
- 12. 休眠會話關閉已關閉
- 13. 在關閉時與當已經打開
- 14. 重新打開已經關閉
- 15. com.liferay.portal.kernel.job.JobExecutionException:org.postgresql.util.PSQLException:這個連接已經關閉
- 16. 值java.sql.SQLException:語句已經關閉
- 17. org.datanucleus.exceptions.NucleusUserException:對象管理器已經關閉
- 18. 「數據庫已經關閉」使用
- 19. 無法訪問已關閉的文件
- 20. 重命名已關閉的文件
- 21. Python沖洗和已經關閉的文件
- 22. Alfresco:流已關閉
- 23. sectionIndexTitlesForTableView鍵已關閉?
- 24. Oracle Connection已關閉
- 25. 光標已關閉
- 26. java.lang.IllegalStateException:EntityManagerFactory已關閉(Glassfish)
- 27. Spring EntityManager已關閉
- 28. 已關閉或已關閉模式下的安全websocket
- 29. 關閉一個Excel文件,如果發現它已經打開
- 30. 檢測Excel文件是否已關閉
看起來像一些這些結果回答你的問題。 – crashmstr
不...但感謝您的投票...不能問這個網站上的問題:( –
我看了整個結果,似乎他們回答你的問題,如上所述。[FILE指針後會發生什麼文件已關閉?](http://stackoverflow.com/questions/8441059/what-happens-to-file-pointer-after-file-is-closed),[在前面關閉的文件句柄上的fclose() ](http://stackoverflow.com/questions/12811464/double-free-error-on-fclose-on-previously-closed-file-handle) – crashmstr