C库函数-fgets()
函數(shù)聲明:char *fgets(char *str,int n,FILE *stream)
函數(shù)介紹:從指定的stream流中讀取一行,并把它存儲在str所指向的字符串中。當(dāng)讀取到(n-1)個(gè)字符時(shí),獲取讀取到換行符時(shí),或者到達(dá)文件末尾時(shí),他會(huì)停止。具體視情況而定。
函數(shù)參數(shù):
l? str –- 這是一個(gè)指向字符數(shù)組的指針,該數(shù)組存儲了要讀取的字符串。
l? n – 這是讀取的最大的字符數(shù)(包括最后面的空字符),通常是使用str傳遞的數(shù)組長度。
l? stream – 這是指向FILE對象的指針,該FILE對象標(biāo)識了要從中讀取的字符串。
返回值:如果成功,該函數(shù)返回相同的str參數(shù),如果到達(dá)文件末尾或者沒有讀取到任何字符,str內(nèi)容保持不變,并返回一個(gè)空指針。
?
實(shí)例:
/* fgets.c */ int main() {FILE *fp;char str[60];fp = fopen("file.txt","r");if(NULL == fp){perror("open the file error");return 0;}while(NULL != fgets(str,60,fp)){puts(str);}fclose(fp);return 0; } /* file.txt */ this is first line this is second linethis is three line輸出結(jié)果:
exbot@ubuntu:~/wangqinghe/Transducer/20190712/01$ ./fgets
this is first line
?
this is second line
?
?
?
this is three line
?
exbot@ubuntu:~/wangqinghe/Transducer/20190712/01$ gedit fgets.c file.txt
?
puts(str);//自帶“\n”
改為:printf(“%s”,str);
運(yùn)行結(jié)果:
exbot@ubuntu:~/wangqinghe/Transducer/20190712/01$ ./fgets
this is first line
this is second line
?
this is three line
轉(zhuǎn)載于:https://www.cnblogs.com/wanghao-boke/p/11176790.html
總結(jié)
以上是生活随笔為你收集整理的C库函数-fgets()的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 这个世界不看脸剧情介绍
- 下一篇: 指定结构体元素的位字段