一、讀字元串函數fgets函數的結局是從指定的檔案中讀一個字元串到字元數組中,函數挪用的體式技倆為:fgets(字元數組名,n,檔案指針);其中的n是一個正整數。表示從檔案中讀出的字元串不趕過n-1
一、讀字元串函數fgets函數的結局是從指定的檔案中讀一個字元串到字元數組中,函數挪用的體式技倆為: fgets(字元數組名,n,檔案指針); 其中的n是一個正整數。表示從檔案中讀出的字元串不趕過 n-1個字元。在讀入的最後一個字元後加上串終了辨別表記标幟'\0'。例如:fgets(str,n,fp);的意義是從fp所指的檔案中讀出n-1個字元送入字元數組str中。
[例10.4]從e10_1.c檔案中讀入一個含10個字元的字元串。
#include<stdio.h>
main()
{
FILE *fp;
char str[11];
if((fp=fopen("e10_1.c","rt"))==NULL)
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
fgets(str,11,fp);
printf("%s",str);
fclose(fp);
本例定義了一個字元數組str共11個位元組,在以讀文本檔案體例翻開檔案e101.c後,從中讀出10個字元送入str數組,在數組最後一個機關内把加上'\0',然後在螢幕上顯示輸出str數組。輸出的十個字元正是例10.1法度圭臬标準規範的前十個字元。
對fgets函數有兩點申明:
1. 在讀出n-1個字元之前,如遇到了換行符或EOF,則讀出終了。
2. fgets函數也有前往值,其前往值是字元數組的首所在。
二、寫字元串函數fputs
fputs函數的結局是向指定的檔案寫入一個字元串,其挪用體式技倆為: fputs(字元串,檔案指針) 其中字元串可以是字元串常量,也可以是字元數組名, 或指針 變量,例如:
fputs(“abcd“,fp);
其意義是把字元串“abcd”寫入fp所指的檔案之中。[例10.5]在例10.2中建立的檔案string中追加一個字元串。
char ch,st[20];
if((fp=fopen("string","at "))==NULL)
printf("input a string:\n");
scanf("%s",st);
fputs(st,fp);
rewind(fp);
ch=fgetc(fp);
while(ch!=EOF)
putchar(ch);
printf("\n");
本例要求在string檔案末加寫字元串,是以,在法度圭臬标準規範第6行以追加讀寫文本檔案的體例翻開檔案string 。 然後輸出字元串, 并用fputs函數把該串寫入檔案string。在法度圭臬标準規範15行用rewind函數把檔案外部職位中央指針移到檔案首。 再進入循環逐一顯示目前檔案中的統統内容。
版權聲明:
原創作品,容許轉載,轉載時請務必以超連結體式技倆标明文章 原始來由 、作者資訊和本聲明。否則将追究司法責任。