读书人

初学者之 文件复制的有关问题

发布时间: 2012-03-17 19:06:28 作者: rapoo

菜鸟之 文件复制的问题
[code=C/C++]
[/cod//文本文件复制
#include<stdio.h>
#include<stdlib.h>
void main(int argc, char *argv[])
{
FILE *fp1,*fp2;
char ch;
if(argc==1)
{
printf("have not erter file name strike any key exit");
getchar();
exit(0);
}

if((fp1=fopen(argv[1],"rt"))==NULL)
{
printf(" Cann't open %s\n",argv[1]);
getchar();
exit(1);

}

if(argc==2)
fp2=stdout;
else if((fp2=fopen(argv[2],"wt+"))==NULL)
{
printf(" Cann't open %s\n",argv[1]);
getchar();
exit(1);
}
while((ch=fgetc(fp1))!=EOF)
fputc(ch,fp2);
printf("file copied!!");
fclose(fp1);
fclose(fp2);
}e]

小弟初学,没见过main(int argc, char *argv[])
这样的形式,这个函数确实没怎么读懂。
编译后 出现的是:have not erter file name strike any key exit。。
希望大侠后帮我讲讲 谢谢啊

[解决办法]
(int argc, char *argv[])//这个是你用cmd之类的去执行可执行文件的时候,后边跟的字符串,argc表示字符串的个数,argv[]是字符串的数组
[解决办法]
main(int argc, char *argv[])

这两个参数与命令行有关
argc 表示命令行参数的数目,包括命令自身
argv 包含所有的命令行参数

假定你的执行程序是aa
执行时,aa sourcefile destfile
那么argc=3, argv[0]="aa", argv[1]="sourcefile", argv[2]="destfile"
[解决办法]
费那事儿!
system("cmd /c copy file1 file2 >NUL 2>NUL");
[解决办法]
通过快捷方式传进去文件路径就好了
[解决办法]

探讨

费那事儿!
system("cmd /c copy file1 file2 >NUL 2>NUL");

读书人网 >C语言

热点推荐