其行爲方式如下:
(1)遇到換行或文件結束EOF則返回。
(2)按行讀取。
(3)每一行結束處的換行字符‘/n’也算該行字符。
(4)對於大小爲size的buf,最多隻讀取size-1個字符。
(5)自動地把buf中最後一個字符(通常是換行符)的後面一個字節填充零結束符('/0')。
因此如果想把buf中的換行符去掉,可以這樣:buf[strlen(buf)-1] = '/0';當前前提是buf足夠大,可以容納完整的一行(包括最後的那個換行符)。
fputs (str, fp)
(1)把str中零結束符之前的全部文字輸入到文件中。
(2)輸入完成後,不會增加額外的特殊字符,如換行符等。
注:如果想輸入完str後,就換行,則應該在上述調用後,再調用fputc('/n',fp);才行。
如果遇到這種情況,先fgets再fputs是如果原文件每行結尾有換行符,則重新寫入後也會重新你換行。
什麼兩個函數在對行文本操作時會經常遇到,在此總結一下!