【问题标题】:How would I use getopt for this?我将如何使用 getopt 呢?
【发布时间】:2013-08-06 06:30:24
【问题描述】:

我需要一种方法来解析作为单个参数 (argv) 出现的多个开关,例如,我的程序中的一些开关是:

-rRsc 

我将如何实现 getopt 以便用户可以输入多个开关作为一个参数,开关之间没有空格或破折号,所以没有:

-r -R -s -c

或者这不能用getopt来完成吗?如果不是,我还能使用什么是 STL 的一部分?

【问题讨论】:

    标签: c++ c getopt


    【解决方案1】:

    Getopt 已经默认处理了这种情况。你不需要做任何特别的事情。 (向下滚动到this page 的末尾以查看示例。)

    【讨论】:

    • 如果一个开关的功能依赖于它之前的一个开关怎么办?因此,对于 -r,如果 -c 也打开,则它仅对 C++ 文件扩展名进行递归文件扫描。那么我将如何输入这些选项呢?嵌套 switch/if 语句?
    • @AaronG。不。保留一个布尔标志列表。
    【解决方案2】:

    你应该知道-rRsc 等于-r -R -s -c

    【讨论】:

    • @AaronG。而且这个答案并不意味着您应该以您不想要的格式指定它们。
    猜你喜欢
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    相关资源
    最近更新 更多