回覆列表
  • 1 # uztau1094

    可以使用fgets函式。1函式名:fgets2宣告:char*fgets(char*buf,intbufsize,FILE*stream);3標頭檔案:stdio.h4功能:從檔案結構體指標stream中讀取資料,每次讀取一行。讀取的資料儲存在buf指向的字元陣列中,每次最多讀取bufsize-1個字元(第bufsize個字元賦"\0"),如果檔案中的該行,不足bufsize個字元,則讀完該行就結束。如若該行(包括最後一個換行符)的字元數超過bufsize-1,則fgets只返回一個不完整的行,但是,緩衝區總是以NULL字元結尾,對fgets的下一次呼叫會繼續讀該行。函式成功將返回buf,失敗或讀到檔案結尾返回NULL。因此我們不能直接透過fgets的返回值來判斷函式是否是出錯而終止的,應該藉助feof函式或者ferror函式來判斷。5引數:*buf: 字元型指標,指向用來儲存所得資料的地址。bufsize: 整型資料,指明儲存資料的大小。*stream: 檔案結構體指標,將要讀取的檔案流。6返回值:成功,則返回第一個引數buf;在讀字元時遇到end-of-file(檔案結尾),則eof指示器被設定,如果還沒讀入任何字元就遇到這種情況,則buf保持原來的內容,返回NULL;如果發生讀入錯誤,error指示器被設定,返回NULL,buf的值可能被改變。7示例程式碼:逐行讀取in.txt中的資料,並列印。每行不超過100個字元。int main(){ FILE *fp; char buf[101]; fp = fopen("in.txt", "r");//開啟檔案 while(fgets(buf, sizeof(buf), fp))//每次讀取一行資料,直到讀取失敗。 { printf("%s\n", buf); //列印該行。 } fclose(fp);//關閉檔案。 return 0;}

  • 中秋節和大豐收的關聯?
  • 夫妻吵架,越吵越親嗎?