#include命令行:#include int copyFile(const char* dest, const char* src){ FILE* fin = fopen(dest, "r"); FILE* fout = fopen(src, "w"); if (fin && fout) { while (!feof(fin))//读到最后一个字符,feof(fin)仍未false { fputc(fgetc(fin), fout); } fclose(fin); fclose(fout); return 0; } return -1;}int main(int argc, char* argv[]){ if (argc > 2) { if (copyFile(argv[1], argv[2]) != 0) printf("文件复制失败\n"); else { long long len; FILE *fp; fp = fopen(argv[1],"r"); fseek(fp,0L,SEEK_END); len = ftell(fp); rewind(fp); printf("输入文件大小:%lld 字节\n",len); printf("文件内容:\n"); while (!feof(fp)) { putchar(fgetc(fp)); } printf("\n"); fclose(fp); fp = fopen(argv[2],"r"); fseek(fp,0L,SEEK_END); len = ftell(fp); rewind(fp); printf("输出文件大小:%lld 字节\n",len); printf("文件内容:\n"); while (!feof(fp)) { putchar(fgetc(fp)); } printf("\n"); fclose(fp); } }}
copy.exe in.txt out.txt
注意out.txt读入了in.txt的文件结束标志EOF,使得两个文件的大小不一样!