C的参数行选项解析

时间:2015-11-25 09:06:53

标签: c getopt unistd.h

我之前看过很多问题,我决定使用 unistd.h 来获取 getopt

但是我需要某个选项取决于之前的选项,如

exe -a a_opt -b b_bopt

-b将执行b_opt/a_opt

因此,必须在-a之前解析-b

有没有办法实现这个?

由于

编辑:简单的方法是创建一个标志并在最后检查它,但是我试图看看是否有更优雅的解决方案。

2 个答案:

答案 0 :(得分:0)

getopt中,参数顺序没有意义。执行此操作的常见方法是为switch设置一个大的getopt大小写设置各种标志,然后在其之后添加对标志的进一步依赖性检查。

答案 1 :(得分:0)

没有真正没有办法仅使用getopt强制执行参数顺序。

可以做的是在getopt向您返回-a选项时设置标记,并在获得-b选项时检查该标记