首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

这个带参数的main()有什么有关问题呢

2012-03-06 
这个带参数的main()有什么问题呢?int main(int argc, char *argv[]){FILE *fp1,*fp2fp1fopen(argv[1],r

这个带参数的main()有什么问题呢?
int main(int argc, char *argv[])
{
FILE *fp1,*fp2;
fp1=fopen(argv[1],"r");
assert(fp1!=NULL);

fp2=fopen(argv[2],"r");
assert(fp2!=NULL);
  ......
}

在运行的时候,输入learnhill value data,会出现错误提示:Assertion failed: fp1!=NULL
这是为什么呢?多谢大家了!


[解决办法]
你要确定你传递进去的命令行是有效的文件路径
否则,打开文件失败,fp1为NULL,就会这样了
[解决办法]
value 和 data 应该为有效的文件路径,如:D://value.txt等。
否则找不到文件,打开文件失败,文件指针fp1为NULL,
到这里assert(fp1!=NULL); 
断言失败,程序abort退出
[解决办法]
如果你是命令行执行需要参数

main.exe filename1 filename2

如果你是vc调试执行,需要在project ->setting ->debug->arguments里设置 filename1 filename2

热点排行