【C】文件操作fopen与fclose
生活随笔
收集整理的這篇文章主要介紹了
【C】文件操作fopen与fclose
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
函數
1.fopen
2.fclose
3.freopen
函數
頭文件
#include<stdio.h>
1.fopen
FILE *fopen(const char *restrict dilename,const char* restrict mode);- 作用:打開文件
- 參數:
- 第一個是含有要打開文件名的字符串("文件名"可以包含關于文件位置信息,如驅動器符或路徑)。
- 注意:在fopen函數調用文件名中含有字符'\'時,C語言有時會當作是轉義字符,可以用'\\'代替'\'
- 第二個參數是"模式字符串",用來指定打算對文件執行的操作,如下圖所示:
- 圖中可以看出,對寫數據和追加數據進行了區分。當給文件寫數據時,通常會對先前的內容進行覆蓋,只覆蓋新寫入的數據,未被修改的不動;追加時保留原文件內容;截取就是只保留新寫的內容,原內容被刪除。
- 還有一點需要強調的是,當打開文件用于讀和寫時,如果沒有先調用一個文件定位函數,或者沒有調用fflush函數就不能從讀取模式轉換為寫模式,除非讀操作遇到了文件尾部'\n'.
- 第一個是含有要打開文件名的字符串("文件名"可以包含關于文件位置信息,如驅動器符或路徑)。
- 返回值:文件指針。程序通常把該指針存儲在一個變量中,稍后早需要對文件進行操作時使用它。當無法打開文件時,會返回空指針,無法打開的原因可能是文件不存在,也可能是文件位置不對,也可能是我們沒有打開文件的權限。
fopen常見調用形式為:
fp=fopen("indat","r");//fp是FILE*類型的變量2.fclose
int fclose(FILE* stream);- ?作用:關閉文件
- 參數:
- 文件指針,來自于fopen,freopen
- 返回值:成功關閉返回0,失敗返回錯誤碼EOF
fopen常見調用形式為:
int main() {FILE* fp;fp=fopen("indat","r");//FILE* fp=fopen(...);if(fp!=NULL)//if(fp=fopen(...)!=NULL){...}...fclose(fp);return 0; }3.freopen
FILE* fropen(const char* restrict filename,const char * restrict mode,FILE* restrict stream);作用:為打開的流附加一個不同的文件。
常用的用法是把文件和一個標準流(stdin,stdout或sterr)相關聯。例如,為了使程序開始往文件foo中寫入數據,可以使用下列形式的freopen函數調用:
if(freopen("foo","w",stdout)==NULL) { ... }?在關閉了先前的(通過命令行重定向或者之前的freopen函數調用)與stdout相關聯的所有文件之后,freopen函數將打開foo,并將其與stdout相關聯。
總結
以上是生活随笔為你收集整理的【C】文件操作fopen与fclose的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机体系结构(复习资料)
- 下一篇: 亚阈值区MOSFET阈值电压Vth随温度