ANSI C文件IO管理

□★實驗4.2.1-3更新緩衝區內容

示例程序:setbuf_example.c

1.運行示例程序。

2.給出運行結果及分析。

★在示例程序的基礎上添加對fflush函數的測試。在設計文檔中寫出測試思路。並給出運行結果及分析。

運行結果:



程序分析:

    第一個測試寫入數據,查看當前緩衝區內容爲空,因爲該程序設置爲關閉緩衝,所以緩衝中沒有內容;第二個測試寫入數據,當前緩衝中沒有內容,因爲該程序設置爲無緩衝,一有數據輸入便保存到磁盤中;第三個測試寫入數據,當前緩衝區內容爲world,因爲該程序設置的是行緩衝,到達一行或者遇到換行符便將內容存入磁盤中;第四個測試當前緩衝中有全部內容,因爲該程序設置爲全緩衝當緩衝區滿或者調用(fclose();/fflush();)函數纔會刷新,所以緩衝區內有所有內容。


□□實驗4.2.3文件流定位

  1.定義一個有關學生考試成績的結構體,將10名學生的信息存入文件。

  2.用戶輸入指定學生的編號,在文件中定位到該學生信息,輸出到屏幕上。

實驗代碼:



程序分析:

   用可寫方式打開文件student.txt,如果沒有改文件則在對應路徑下創建文件。將數組stu1[ ]的內容保存到文件中。輸入學號n,用函數fseek();定位當前位置,文件開頭後n-1個結構體大小的位置,讀一個結構體大小的內容放入stu3中,然後輸出stu3的內容。

運行結果:



實驗4.3.4 獲取CPU的當前信息

1.用sscanf函數獲取CPU當前信息,輸出到屏幕上。

 

實驗運行:



實驗分析:

用函數fopen();可讀方式打開相應路徑下的文件,用函數strstr();找到和“cpu MHz”有相同字符的位置,從此開始複製入*pos中用sscanf();函數提取相應內容;再輸出該內容。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章