基礎知識
打開一個文件並且返回一個文件指針。
函數原型爲
FILE* fopen(const char* filename,const char mode
實驗內容
①用fopen()打開一個文件
②探究不同的打開方式
③返回值的探究
用fopen()打開一個文件
程序截圖
運行結果
說明
程序以可寫的方式打開文件test.txt,並返回一個FILE指針,該指針不爲空。打開文件必須做這一步的檢查
探究不同的打開方式
①w
程序截圖
運行結果
說明
打開的文件先被清空,可寫但不可以讀。文件不存在則新建
②w+
程序截圖
運行結果
說明
用w+方式打開的文件既可以讀也可以寫。文件打開後內容被清空,如果文件不存在則會新建一個空文件
③r
程序截圖
運行結果
說明
用r打開的文件只可以讀不可以寫,如果文件不存在,則打開失敗!
④r+、
程序截圖
運行結果
說明
用r+打開的文件可以也可以寫,起始位置在文件開頭,與w+的區別在於文件不存在則打開失敗,文件內容不會被清空
⑤a
程序截圖
運行截圖
說明
用a打開的文件可寫但不可以讀,寫入位置在文件末尾,文件不存在時會自動創建文件
⑥a+
程序截圖
運行結果
說明
用a+打開文件可讀可寫,指針位置在文件尾,如果文件不存在會自動創建。
返回值的探究
fopen函數調用失敗時返回一個NULL指針
fopen函數調用成功時返回一個FILE指針
問題思考
文件說明情況下會打開失敗
①受到打開方式的影響如以r打開文件但是文件不存在時。
②程序對文件沒有相應的權限
③文件已經被其他程序佔用