总结:
main(int argc,char *argv[])
argc :表示输入给main函数的参数的个数
argv:argv[0],表示传给main函数的第一个参数,也就是控制命令
argv[1]: 表示传给,main()函数的第二个参数,也就是源文件
argv[2]:表示传给,main函数第三个参数,也就是目标文件
#include <stdio.h>
#include <stdlib.h>
int main(int argc,char* argv[])
{
FILE *in,*out;
int ch;
if(argc != 3)
{
fprintf(stderr,"输入形式:copyFile 源文件名 目标文件名 \n");
exit(EXIT_FAILURE);
}
if( (in = fopen(argv[1],"rb")) == NULL)
{
fprintf(stderr,"打不开文件:%s \n",argv[1]);
fclose(in);
exit(EXIT_FAILURE);
}
if((out = fopen(argv[2] ,"wb")) == NULL)
{
fprintf(stderr,"打不开文件:%s \n",argv[2]);
exit(EXIT_FAILURE);
}
while((ch = getc(in)) != EOF)
{
if(putc(ch,out) == EOF)
{
break;
}
}
if(ferror(in))
{
printf("读取文件 %s 失败\n",argv[1]);
}
if(ferror(out))
{
printf("写入文件 %s 失败\n",argv[2]);
}
fprintf(stdout,"已复制成功,请查看 \n");
fclose(in);
fclose(out);
return 0;
}