-7
A
回答
0
基本上,setvbuf
是相同的邏輯setbuf
一個新的API。 setbuf
是爲了與在setvbuf
之前寫入的程序兼容而存在。
換句話說,除非你處理的代碼已經使用setbuf
,只是忽略它存在。
功能:
void setbuf (FILE *stream, char *buf)
- 如果
buf
是一個空指針,這個功能的效果等同於調用setvbuf
與_IONBF
一個模式的論點。否則,它等效於使用buf
調用setvbuf
,以及模式_IOFBF
和大小參數BUFSIZ
。- setbuf函數是爲了與舊代碼兼容而提供的;在所有新程序中使用setvbuf。
0
三種可能的情況:
1)在(不太可能)_要 「優化」 您的I/O緩衝的情況下,你可以使用setvbuf。
2)您可能希望緩衝到您直接控制(或者函數setbuf或setvbuf用來)
記憶......然後......
3)您可能希望關閉緩衝(或打開回到ON:再次,setbuf或setvbuf)。
如果你使用任何東西,你喜歡 退房Beej's Guide to C
相關問題
- 1. 什麼時候返回null?
- 2. 什麼時候評估了右值?
- 3. 什麼時候invokedynamic實際上有用(除了懶惰常量)?
- 4. 什麼時候創建了app.config,什麼時候app.exe.config和有什麼區別
- 5. TSQL - 什麼時候使用'not null'
- 6. 什麼時候應該使用let {},什麼時候只是簡單的!= null
- 7. 什麼時候File.join有用?
- 8. 什麼時候InputStream.available()有用?
- 9. 什麼時候__proto__有用?
- 10. 使用到什麼時候死了
- 11. 什麼時候findViewById()返回null?
- 12. 什麼時候的getInputStream()返回null?
- 13. 什麼時候ShowDialog()返回null?
- 14. HttpServletRequest.getSession(false):它什麼時候返回null?
- 15. 什麼時候SqlCommand.ExecuteReader()返回null?
- 16. 什麼時候可以ValidatorUtils.getValueAsString()返回null?
- 17. 什麼時候在PL/SQL中不確定NULL會有用?
- 18. 什麼時候複製了C#值/對象,何時複製了其引用?
- 19. QTreeWidget :: currentItem什麼時候沒有選擇什麼時候返回?
- 20. 什麼時候創建了RMI連接?
- 21. 什麼時候創建了Control.UniqueId?
- 22. 什麼時候創建了String對象?
- 23. 知道什麼時候MFMailComposeViewController不見了
- 24. 這是什麼時候Gradle錯了?
- 25. 什麼時候加載IIS7太多了?
- 26. 什麼時候startService()停止了服務?
- 27. 什麼時候添加了System.Windows.Threading.Dispatcher.Invoke(System.Delegate,System.Object [])?
- 28. 什麼時候添加了ctl00前綴?
- 29. 什麼時候執行了javascript函數
- 30. 什麼時候應該使用async/await,什麼時候不用?
1) - >不,據我所知......緩衝區的大小總是必須是BUFSIZ。 –
'setvbuf'允許您重新定義該IO流的緩衝區大小。 'setbuf'是setvbuf,緩衝區大小自動設置爲BUFSIZ。 – LinearZoetrope