2023年c語言fgets函數(shù)用法優(yōu)秀

格式:DOC 上傳日期:2023-04-28 19:10:45
2023年c語言fgets函數(shù)用法優(yōu)秀
時間:2023-04-28 19:10:45     小編:zdfb

在日常學(xué)習(xí)、工作或生活中,大家總少不了接觸作文或者范文吧,通過文章可以把我們那些零零散散的思想,聚集在一塊。寫范文的時候需要注意什么呢?有哪些格式需要注意呢?這里我整理了一些優(yōu)秀的范文,希望對大家有所幫助,下面我們就來了解一下吧。

c語言fgets函數(shù)用法篇一

本文主要介紹了c語言文件操作中 fgets與fputs 函數(shù)詳解的相關(guān)資料,下面是小編為大家整理的c語言文件操作中fgets與fputs函數(shù)講解,歡迎參考~

語法:

#include

char *fgets( char *str, int num, file *stream );

函數(shù)fgets()從給出的文件流中讀取[num - 1]個字符并且把它們轉(zhuǎn)儲到str(字符串)中. fgets()在到達(dá)行末時停止,在這種情況下,str(字符串)將會被一個新行符結(jié)束. 如果fgets()達(dá)到[num - 1]個字符或者遇到eof, str(字符串)()成功時返回str(字符串),失敗時返回null.

1、每次讀取一行,如果讀取的一行字符數(shù) len > bufsize-1,則 buf[ bufsize-1 ] = '0'

文件句柄指向第bufsize的位置。

2、每次讀取一行,如果讀取的一行字符數(shù) len = bufsize-1,則 buf[ bufsize-1 ] = '0'

文件句柄指向第bufsize的位置。

3、每次讀取一行,如果讀取的一行字符數(shù) len < bufsize-1,則 buf [ len-1 ] = ' ' , buf [ len ] = ''

文件句柄指向下一行的首位置。

驗(yàn)證代碼:

int i=0;

file *fp;

char buff[5];

//將數(shù)組賦值為9,便于后面與賦值的地方比較

memset(buff,9,sizeof(buff));

char *fname = "d:/";

fp = fopen(fname,"r");

fgets(buff,sizeof(buff),fp);

//打印出數(shù)組的ascii碼

printf("buff數(shù)組內(nèi)容: ");

for(i=0;i<sizeof(buff);i++)

{

printf("%d ",(int)buff[i]);

}

printf(" ");

//繼續(xù)獲取下一行字符,驗(yàn)證文件句柄的位置

memset(buff,9,sizeof(buff));

fgets(buff,sizeof(buff),fp);

//打印出數(shù)組的ascii碼

printf("下一行buff數(shù)組內(nèi)容: ");

for(i=0;i<sizeof(buff);i++)

{

printf("%d ",(int)buff[i]);

}

printf(" ");

fclose(fp);

文件內(nèi)容:

1234

asdf

輸出結(jié)果:

buff長度為4,驗(yàn)證理解1

buff數(shù)組內(nèi)容:

49 50 51 0

下一行buff數(shù)組內(nèi)容:

52 10 0 9

buff長度為5,驗(yàn)證理解2

buff數(shù)組內(nèi)容:

49 50 51 52 0

下一行buff數(shù)組內(nèi)容:

10 0 9 9 9

buff長度為10,驗(yàn)證理解3

buff數(shù)組內(nèi)容:

49 50 51 52 10 0 9 9 9 9

下一行buff數(shù)組內(nèi)容:

97 115 100 102 0 9 9 9 9 9

文件寫入數(shù)據(jù)本質(zhì):

將字符串插入到文件中,在字符串的.結(jié)尾處插入換行符' '

fgets函數(shù)本質(zhì):

按照需要寫入的緩存空間大小,將文件中的buffsize-1個字符寫入到緩存空間,將緩存空間的buffsize位置寫入''字符。

fputs函數(shù)本質(zhì):

將指定的字符串寫入文件流中,不包含字符串結(jié)尾符'',利用它可以替換文件流中數(shù)據(jù),但是不能添加數(shù)據(jù)。

驗(yàn)證代碼

file *fp;

char *fname = "d:/";

fp = fopen(fname,"r+");

fseek(fp,3,seek_cur);

fputs("insert strings",fp);

fclose(fp);

原文件內(nèi)容:

1234

second line. second strings.

修改后文件內(nèi)容:

123insert strings. second strings.

可以看出,將原文件中的“ 及second line.” 替換為了“insert strings.”

fputc函數(shù)本質(zhì):

函數(shù)fputc()把給出的字符ch寫到給出的輸出流中的指定位置. 返回值是字符, 發(fā)生錯誤時返回值是eof. 可以替換文件流中數(shù)據(jù),但是不能添加數(shù)據(jù)。

fgetc函數(shù)本質(zhì):

fgetc()函數(shù)返回來自stream(流)中的下一個字符,如果到達(dá)文件尾或者發(fā)生錯誤時返回eof. 是什么字符,就返回什么字符(包括'',' ')。

s("content_relate");

【c語言文件操作中fgets與fputs函數(shù)講解】相關(guān)文章:

c語言文件操作函數(shù)

11-04

c語言文件操作函數(shù)freopen詳解

11-20

c語言用fstat函數(shù)獲取文件的大小

11-06

go與c語言的操作

10-20

php文件操作函數(shù)解釋

09-04

c語言文件操作解析詳解及實(shí)例代碼

10-03

c語言程序中函數(shù)的定義

10-03

php網(wǎng)絡(luò)操作函數(shù)講解

09-30

c語言函數(shù)調(diào)用與參數(shù)傳遞

02-01

【本文地址:http://gzsthw.cn/zuowen/2746711.html】

全文閱讀已結(jié)束,如果需要下載本文請點(diǎn)擊

下載此文檔