c語言fgets函數
發布時間: 2021-03-11 20:26:17
『壹』 c語言中的fgets函數。
哦
這里是特殊情況。
initial這個數組長度只有2,
讀進來一個數據就滿了(因為第二個位置要寫0呢。
所以後面的回車沒被讀進來,因為緩沖區滿了。
『貳』 c語言中fgets的返回值類型
1、如果成功,該函數返回相同的 str 參數。如果到達文件末尾或者沒有讀取到任何字元,str 的內容保持不變,並返回一個空指針。如果發生錯誤,返回一個空指針。
在讀字元時遇到end-of-file,則eof指示器被設置,如果還沒讀入任何字元就遇到這種情況,則stream保持原來的內容,返回NULL;
2、如果發生讀入錯誤,error指示器被設置,返回NULL,stream的值可能被改變。
如果文件中的該行,不足n-1個字元,則讀完該行就結束。如若該行(包括最後一個換行符)的字元數超過n-1,則fgets只返回一個不完整的行,但是,緩沖區總是以NULL字元結尾,對fgets的下一次調用會繼續讀該行。
函數成功將返回stream,失敗或讀到文件結尾返回NULL。因此不能直接通過fgets的返回值來判斷函數是否是出錯而終止的,應該藉助feof函數或者ferror函數來判斷。
(2)c語言fgets函數擴展閱讀
函數使用:
1、同時可以用作鍵盤輸入:fgets(key,n,stdin)且還必須:key[strlen(key)]='