#include
#include
#define getchar() getc(stdin)
#define putchar(c) putc((c),stdout)
//cat函数:连接多个文件 v2.0
int main(int argc, char *argv[])
{
FILE *fp;
void filecopy(FILE *,FILE *);
char *prog=argv[0];
if(argc==1)
filecopy(stdin,stdout);
else
while(--argc>0)
if((fp=fopen(*++argv,"r"))==NULL){
fprintf(stderr,"%s:cant open %s/n",prog,*argv);
}else{
filecopy(fp,stdout);
fclose(fp);
}
if(ferror(stdout)){
fprintf(stderr,"%s:error writing stdout/n",prog);
exit(2);
}
exit(0);
system("PAUSE");
return 0;
}
void filecopy(FILE *ifp,FILE *ofp)
{
int c;
while((c=getc(ifp))!=EOF)
putc(c,ofp);
}