【发布时间】:2016-01-25 10:02:25
【问题描述】:
在我的程序开始时,它应该从控制台获取输入文件的路径和输出文件的路径。 但是,如果用户提供了不需要的参数数量或错误的参数(例如,带有空格,或没有“.txt”),它应该给用户第二次机会在不退出程序的情况下输入这些参数。有可能吗?
int main(int argc, char* argv[])
{ //and here should be something to check if the user entered parameters correctly
//(number and if they look like a path) and give a user another try if this is wrong
//(so that user enter them from console again)
string path_open(argv[1]);
strin path_out(argv[2]);
【问题讨论】:
-
有可能吗? 是的,这当然有可能。同样在您的示例代码中,您应该在使用 argv[1] ... 之前检查 argc
-
是的,可以再次询问用户。但你为什么要考虑这个?如果用户输入垃圾,写入错误信息并退出。编写代码没有令人信服的理由,这给了用户第二次机会。如果他们需要第二次机会,让他们再次调用您的程序。
标签: c++ parameters argv argc