fopen.c中有一个错误,我该如何解决它? 将argv [1],argv [2]分配给ft,fs时出错。如何使用命令参数?
int main (int argc, char *argv[])
{
//FILE *fs, *ft ;
char ch ;
//ft = fopen ("d:\\out.txt", "w") ;
fs = fopen(argv[1], "r");
if (fs == NULL) {
puts ("Cannot open source file") ;
exit(1) ;
}
//fs = fopen("d:\in_file.txt","r") ;
ft = fopen(argv[2], "w");
if (ft == NULL){
puts ("Cannot open target file") ;
exit(1) ;
}
}
你应该检查'argc';它是在命令行上传递的参数的计数。你的代码可能不存在时访问'argv [1]'和'argv [2]'。另外,“赋值错误”是什么意思?什么错误?据我所知,这里没有任何mindreaders,我们也看不到你的显示器。 – 2011-03-13 20:46:34
现在* ft *和* fs *不存在,因为它们的声明在代码中被注释掉了。 – karlphillip 2011-03-13 21:00:19