那么GNU getopt 只支持中间的选项?

发布于 2024-11-18 04:35:44 字数 356 浏览 2 评论 0原文

我正在尝试 getopt API:

http://www.gnu.org/s/hello/manual/libc/Example-of-Getopt.html#Example-of-Getopt

但我发现它只支持选项在 中间?

我发现它将 argv[optind] 判断为 argv[argc-1] 作为非 opt 参数。

是这样吗?

I'm trying the getopt API:

http://www.gnu.org/s/hello/manual/libc/Example-of-Getopt.html#Example-of-Getopt

But I find it only supports options in the middle?

As I find that it's judging argv[optind] to argv[argc-1] as non-opt arguments.

Is that the case?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

吹泡泡o 2024-11-25 04:35:44

GNU getopt 允许在命令行的任何位置使用选项。不过,它在解析时会重新排序 argv 。您可以通过将示例代码保存在文件中、编译它并运行结果来验证这一点:

./a.out
./a.out -a
./a.out foo
./a.out -a foo
./a.out foo -a

最后两个将给出相同的结果。

GNU getopt allows options anywhere on the command line. It re-orders argv when parsing, though. You can verify this by saving the example code in a file, compiling it, and running the result:

./a.out
./a.out -a
./a.out foo
./a.out -a foo
./a.out foo -a

The last two will give the same results.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文