關于文件緩沖區的概念

      網友投稿 966 2025-03-31

      大家好,我是芒果,一名非科班的在校大學生。對C/C++、數據結構、Linux及MySql、算法等領域感興趣,喜歡將所學知識寫成博客記錄下來。 希望該文章對你有所幫助!如果有錯誤請大佬們指正!共同學習交流


      掘金LV3用戶 https://juejin.cn/user/1381426159953960

      阿里云社區專家博主,星級博主,技術博主 https://developer.aliyun.com/profile/expert/5lkdbuggiiuhc

      華為云云享專家 https://bbs.huaweicloud.com/community/myhomepage

      14.文件緩沖區

      ANSIC 標準采用“緩沖文件系統”處理的數據文件的, 所謂緩沖文件系統是指系統自動地在內存中為程序中每一個正在使用的文件開辟一塊“文件緩沖區”。 從內存向磁盤輸出數據會先送到內存中的緩沖區,裝滿緩沖區后才一起送到磁盤上。 如果從磁盤向計算機讀入數據,則從磁盤文件中讀取數據輸入到內存緩沖區(充滿緩沖區),然后再從緩沖區逐個地將數據送到程序數據區(程序變量等)。 緩沖區的大小根據C編譯系統決定的。

      就好比getchar:并不是直接從鍵盤直接拿數據

      驗證緩沖區的存在

      關于文件緩沖區的概念

      #include #include //VS2013 WIN10環境測試 int main() { FILE* pf = fopen("test.txt", "w"); fputs("abcdef", pf);//先將代碼放在輸出緩沖區 printf("睡眠10秒-已經寫數據了,打開test.txt文件,發現文件沒有內容\n"); Sleep(10000); printf("刷新緩沖區\n"); fflush(pf);//刷新緩沖區時,才將輸出緩沖區的數據寫到文件(磁盤) //注:fflush 在高版本的VS上不能使用了 printf("再睡眠10秒-此時,再次打開test.txt文件,文件有內容了\n"); Sleep(10000); fclose(pf); //注:fclose在關閉文件的時候,也會刷新緩沖區 pf = NULL; return 0; }

      上述用到的函數:

      Sleep:休眠函數,要引用windows.h頭文件,C語言中Sleep參數的單位是毫秒,1000ms = 1s

      fflush:刷新緩沖區的函數,把緩沖區的內容數據寫到文件中

      執行結果:

      再次打開:

      因為有緩沖區的存在,C語言在操作文件的時候,需要做刷新緩沖區或者在文件操作結束的時候關閉文件

      刷新緩沖區/關閉文件的操作/緩沖區滿了,數據才會寫到文件中

      文件講解到這里就算結束了!

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:excel表格如何將工作簿復制到另一個工作簿(excel怎么把工作簿中的內容復制到另一個工作薄)
      下一篇:Excel表格中三維餅圖有哪些制作方法(excel怎么用三維餅圖)
      相關文章
      亚洲好看的理论片电影| 亚洲明星合成图综合区在线| 亚洲在成人网在线看| 国产av无码专区亚洲av桃花庵| 亚洲毛片网址在线观看中文字幕 | 亚洲熟妇自偷自拍另欧美| 亚洲啪啪免费视频| 亚洲宅男天堂a在线| 亚洲精品人成电影网| 亚洲天堂一区二区三区| 亚洲成人在线免费观看| 亚洲剧情在线观看| 最新国产成人亚洲精品影院| 亚洲综合色丁香婷婷六月图片| 亚洲天堂2017无码中文| 亚洲乱妇老熟女爽到高潮的片 | 亚洲午夜福利717| 亚洲动漫精品无码av天堂| 国产亚洲美女精品久久久久狼| 亚洲精品tv久久久久久久久| 亚洲av永久无码精品漫画| 久久青草亚洲AV无码麻豆| 无码专区—VA亚洲V天堂| 亚洲AV福利天堂一区二区三| 亚洲福利在线观看| 亚洲三级在线视频| 亚洲狠狠狠一区二区三区| 亚洲福利视频网址| 2020国产精品亚洲综合网 | 亚洲无线码在线一区观看| 亚洲av无码一区二区乱子伦as | 久久亚洲熟女cc98cm| 亚洲伊人久久大香线蕉在观| 在线综合亚洲欧洲综合网站| 亚洲精品理论电影在线观看| 一区二区三区亚洲视频| 亚洲无av在线中文字幕| 国产∨亚洲V天堂无码久久久| 911精品国产亚洲日本美国韩国 | 亚洲色无码一区二区三区| 香蕉视频在线观看亚洲|