1 /*---------------------------------------- 2 append.c -- 把文件附加到另一个文件末尾 3 ----------------------------------------*/ 4 5 #include <stdio.h> 6 #include <stdlib.h> 7 #include <string.h> 8 9 #define BUFSIZE 4096 10 #define SLEN 81 11 12 void append(FILE *sourse, FILE *dest); 13 char *s_gets(char *st, int n); 14 15 int main() 16 { 17 FILE *fa, *fs; //fa 指向目标文件,fs指向源文件 18 int files = 0; //附加文件的数量 19 char file_app[SLEN]; //目标文件名 20 char file_src[SLEN]; //源文件名 21 int ch; 22 23 puts("Enter name of destination file:"); 24 25 s_gets(file_app, SLEN); 26 27 if ((fa = fopen(file_app, "a+")) == NULL) 28 { 29 fprintf(stderr, "Can't open %s ", file_app); 30 exit(EXIT_FAILURE); 31 } 32 33 if (setvbuf(fa, NULL, _IOFBF, BUFSIZ) != 0) 34 { 35 fputs("Can't create output buffer ", stderr); 36 exit(EXIT_FAILURE); 37 } 38 39 puts("Enter name of first source file (empty line to quit):"); 40 41 while (s_gets(file_src, SLEN) && file_src[0] != '