0

我正在为我的大学工作/开发一个 C 程序,在调用时可以有 3 个选项(-h寻求帮助,-o <argument>(有或没有它),最后一个选项可以是一个字符串,如(test-in-1):

./myprogram test-in-1

我必须在我的主程序上处理这些选项,并在调用它们时执行所需的操作。它们都不是强制性的。

我正在考虑使用getopt来解析选项,但是其中一个选项实际上是 astring(char *)并且我有点迷失了这个选项,因为getopt无法读取字符串,只能读取 char 或带有参数的 char(例如,-h, -o <argument>,据我了解)。知道我该怎么做吗?

除了主线之外,我真的不能发布任何代码,因为我在它的开头卡住了(int main(int argc, char *argv[]))

提前感谢您提供正确方向的任何建议/点。

4

2 回答 2

0

您可以传递一个冒号:,这意味着它需要一个参数,并且该参数将设置在optarg.

另请参阅我的答案here

于 2012-12-14T01:06:19.997 回答
0

如果您要链接到 GNU C 库,请查看getopt_long

于 2012-12-14T01:08:16.533 回答