本文目錄一覽:
- 1、C語言 fgets(text,sizeof(str1),stdin) stdin是什麼?
- 2、C語言 fgets(text,sizeof(str1),stdin) 怎麼用 請大神詳述
- 3、c語言中的fgets函數。
- 4、c語言中fgets操作方法,求一簡單程序示範
C語言 fgets(text,sizeof(str1),stdin) stdin是什麼?
stdin指的是標準輸入,大多數情況下就是鍵盤
fgets(text,sizeof(str1),stdin) 就是從鍵盤輸入sizeof(str1)這個長度的字符串(包括’\0′),並保存到text這個地址空間
C語言 fgets(text,sizeof(str1),stdin) 怎麼用 請大神詳述
`fgets’–get character string from a file or stream
從文件或者流中獲取字符串
stdin是標準輸入流
示例1:
char strBuf[1024];
fgets(strBuf, sizeof(strBuf), stdin);
//處理strBuf
示例2:
FILE* fp = fopen(“some_file.txt”, “r”);
if(fp)
{
char strBuf[1024];
fgets(strBuf, sizeof(strBuf), fp);
//處理strBuf
}
c語言中的fgets函數。
fgets()函數用於從文件流中讀取一行或指定個數的字符,其原型為:
char
*
fgets(char
*
string,
int
size,
FILE
*
stream);
參數說明:
string為一個字符數組,用來保存讀取到的字符。
size為要讀取的字符的個數。如果該行字符數大於size-1,則讀到
size-1
個字符時結束,並在最後補充’
\0’;如果該行字符數小於等於
size-1,則讀取所有字符,並在最後補充
‘\0’。即,每次最多讀取
size-1
個字符。
stream為文件流指針。
【返回值】讀取成功,返回讀取到的字符串,即string;失敗或讀到文件結尾返回NULL。因此我們不能直接通過fgets()的返回值來判斷函數是否是出錯而終止的,應該藉助feof()函數或者ferror()函數來判斷。
注意:fgets()與gets()不一樣,不僅僅是因為gets()函數只有一個參數
FILE
*stream,更重要的是,fgets()可以指定最大讀取的字符串的個數,杜絕了gets()使用不當造成緩存溢出的問題。
c語言中fgets操作方法,求一簡單程序示範
fgets為stdin.h頭文件中聲明的,從文件中讀取字符串的函數。
原型:
char *fgets(char *buf, int bufsize, FILE *stream);
參數:
buf: 指向用來存儲字符串的內存位置。
bufsize: 讀取數據的大小。
stream: 將要讀取的文件流。
fgets最多從文件中讀取bufsize-1個字符,若讀取的行不足bufsize-1個字符,則讀取完這行後就結束;若讀取的行超過bufsize-1個字符,則只讀取bufsize-1個字符,下次調用fgets時,將從此行未讀取完的位置繼續讀取。
示例:
#include stdio.h
int main()
{
char s[60];
FILE *fin = fopen(“a.txt”, “r”);
fgets(s, 60, fin);
puts(s);
fclose(fin);
return 0;
}
原創文章,作者:RVNMD,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/317898.html