解析命令行参数后执行某些操作的最佳方法

时间:2015-09-29 20:13:52

标签: c command-line-arguments command-line-tool

我想知道基于传递给程序的命令行选项执行代码块的一些好方法。程序应该根据参数的数量进行扩展。例如:

if (option1 and option2)
    do something;
if(option1 or option2)
    do something;
if (option3 and option4)
    do something;

所以,我希望我的程序能够健壮并处理所提供选项的所有情况。我知道我可以使用if-else或switch语句来实现这一点,但这需要大量的处理。这些是唯一的方法吗?有没有更好的方法来实现这一目标? 感谢

1 个答案:

答案 0 :(得分:1)

最后,您需要根据提供的输入自行做出决策。

但是,如果你想让它干净,你可以尝试这样的事情:

=>>在第一步中,您可以获得状态。这将有助于在一个地方整理所有条件分支

if (option1 and option2)
    set STATE1;
if(option1 or option2)
    set STATE2;
if (option3 and option4)
    set STATE3;

=>>现在,一旦状态明确,您可以尝试:

case STATE1:
    do something;
case STATE2:
    do something;
case STATE3:
    do something;

可能不是您正在寻找的答案。但这肯定会帮助你以更好的方式构建你的程序。