如何在UNIX中对C ++上的命令行参数进行错误检查?例如,如果您没有输入参数,那么如何打印出错误消息而不仅仅是出现分段错误?
答案 0 :(得分:3)
if (argc<2)
{
fprintf(stderr, "This program requires more parameters\n");
return -1;
}
答案 1 :(得分:1)
如果argc
不大于1,则用户未提供命令行参数:
#include <stdio.h>
int main (int argc, char *argv[])
{
if (argc < 2)
{
printf("The command had no arguments.\n");
}
return 0;
}
答案 2 :(得分:0)
使用getopt。
答案 3 :(得分:0)
强烈建议使用boost program_option
库进行命令行解析。