日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言中 文件的字符串输入函数是6,【C语言】文件操作及输入输出格式(文件常用的库函数)...

發布時間:2023/12/19 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言中 文件的字符串输入函数是6,【C语言】文件操作及输入输出格式(文件常用的库函数)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考中國大學MOOC 浙江大學翁愷C語言程序設計在線課程

目錄

常用文件輸入輸出符號格式及標準

常用應用對象為文件的庫函數簡介:

庫函數部分:

文件創建、打開、閱讀:

數據塊寫入讀出(只有這兩個函數可以對二進制文件進行數據操作):

字符及字符串寫入讀出:

格式化讀寫函數:

其他函數:

符號和格式部分:

常用文件輸入輸出符號格式及標準

常用應用對象為文件的庫函數簡介:

文件的創建打開閱讀

數據塊的寫入讀出

字符串及字符的寫入讀出

格式化讀寫

其他常用函數

庫函數部分:

文件創建、打開、閱讀:

1、fopen:

功能:見下表指令集

聲明源代碼:FILE * fopen(const char * path,const char * mode);

path:文件名

mode:指令集(見下表)

示例:包含文件地址的指針變量 = fopen("文件名" , "指令'');

返回值:文件的指針

fopen

r

打開只讀

r+

打開讀寫,從?件頭開始

w

如果不存在則新建,如果存在則清空

w+

打開讀寫。如果不存在則新建,如果存在則清空

a

打開追加。如果不存在則新建,如果存在則從?件尾開始

..x

如果?件已存在則不能

2、fclose:

聲明源代碼:int fclose(FILE *fp);

功能:關閉fp指向的文件(一個文件同時只能被一個用戶打開,所以對文件的操作執行完畢后要關閉文件)

返回值:如果成功關閉,fclose()函數返回0,否則返回EOF。

數據塊寫入讀出(只有這兩個函數可以對二進制文件進行數據操作):

3、fwrite:

聲明源代碼:int fwrite(const void* ptr, int size, int count, FILE* fp);

功能:從ptr指向的地方讀取count個size大小的數據寫入fp指向的文件中(若指針指向的位置后方有數據會被新寫入的數據覆蓋)

返回值:返回成功寫入數據塊個數(所有正常寫入應該為count)

4、fread:

聲明源代碼:int fread(void *ptr, int size, int count ,FILE *stream);

功能:從fp指向的文件中讀取size個字節的數據,讀取count次存入ptr指向的數據塊中。

返回值:返回的是成功讀取到的字節數。

字符及字符串寫入讀出:

5、fgetc:

聲明源代碼:int fgetc(FILE *stream);

功能:從stream指向的文件中讀取一個字節的數據。

返回值:返回所讀取的一個字節。如果讀到文件末尾或者讀取出錯時返回EOF。

6、fputc:

聲明源代碼:int fputc(char ch, FILE *stream);

功能:向stream指向的文件中寫入ch;

返回值:返回的時寫入等價的字符的ASCII碼值,出錯是,返回EOF(-1)。

7、fgets:

聲明源代碼:char *fgets(char *str, int size, FILE *stream);

功能:向stream指向的文件內寫入str數組中的size字節的數據。

返回值:調用成功,將讀取的字符串返回,使用fgets函數讀取的時候會自動在字符串后邊加上一個‘\0’,失敗返回NULL。

8、fputs:

聲明源代碼:int? fputs( const char * Str, FILE * File);

功能:向File指向的文件中輸出Str指向的字符串( 可在文件指針處填寫stdout(標準輸出) )

返回值:如果寫入成功,則返回非0,此時編譯器默認為返回1;如果寫入錯誤,則返回EOF。

格式化讀寫函數:

(下方提到的字符串也做格式串)

9、fscanf:

聲明源代碼:int fscanf(FILE *stream, const char *format, ...);

功能:從stream指向的文件讀取字符串到... 。fscanf遇到空格和換行時結束(fgets遇到空格不結束)。

示例:fscanf(fp ,"%d" , &obj)

返回值:返回實際讀取的數據個數,出錯或者到結尾返回EOF。

Tips:fscanf與scanf函數的區別在于scanf是從標準輸入(鍵盤)讀取數據,而fscanf是從指定的文件中讀取數據。

10、fprintf:

聲明源代碼:int fprintf(FILE *stream, const char *format, ...);

功能:將format指向的字符串寫入文件...取決于字符串中待填入項目(%d等)的多少。(當文件區填入stderr時輸出至屏幕)

示例:fprintf(fp, obj);(可以不填...中的內容使僅僅輸出字符串到文件)

fprintf(fp, "%d",obj);(類比于printf)

返回值:本次寫入操作寫到文件中的字節數。

Tips:fprintf與printf的不同之處在于printf是寫入到標準輸出(屏幕),而fprintf是將數據寫入到指定的文件中去。

其他函數:

11、fseek(控制文件指針偏移):

聲明源代碼:int fseek(FILE *fp, long offset, int whence);

whence是指偏移方式。有如下三種值可選:

SEEK_SET 從距文件開頭offset 位移量為新的讀寫位置.

SEEK_CUR 以目前的讀寫位置往后增加offset 個位移量.

SEEK_END 將讀寫位置指向文件尾后再增加offset 個位移量.

功能:將fp指向文件的文件指針按whence的偏移方式,偏移offset個偏移量

示例:?fseek(fp, -(long)sizeof(int), SEEK_END);

返回值:調用成功返回0,失敗返回-1,error存放錯誤代碼。

12、ftell(獲取當前文件指針位置):

聲明源代碼:long ftell( FILE * File);

功能:獲取File指向的文件的位置指針相對于文件頭指針的位移量

返回值:無返回值。

13、rewind(將文件指針指向文件開頭):

聲明源代碼:void rewind( FILE * File);

功能:使File指向的文件的位置指針指向首地址。

返回值:當前讀寫位置偏離文件頭部的字節數,操作失敗返回1L。

14、feof(判斷文件指針是否指向文件尾)(只適用于文本文件不適用于二進制文件):

聲明源代碼:void feof( FILE * File);

功能:檢測File指向的文件的位置指針是否指向文件尾。

返回值:是則返回1,不是則為0。

15、ferror(檢查文件操作錯誤函數):

聲明源代碼:int ferror( FILE * File);

功能:檢測File指向的文件的讀寫是否出錯。

返回值:是則返回1,不是則為0。

Tips:在調用fopen,fclose函數后會產生一個新的ferror的函數值所以應該在,文件的打開關閉操作后盡快判斷

16、clearerr(清除出錯標志和文件結果標志)

聲明源代碼:void clearerr( FILE * File);

功能:清除File指向的文件的文件出錯標志和結果標志。

返回值:無返回值。

—————————————————————————————————————————————————

符號和格式部分:

格式化的輸?輸出

? printf

? %[flags][width][.prec][hlL]type

? scanf

? %[flag]ty

%*[^,]??? (逗號前的東西都舍去)

%[^,]??? (作為字符串讀入)

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的c语言中 文件的字符串输入函数是6,【C语言】文件操作及输入输出格式(文件常用的库函数)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。