使用getopt_long,如何在optarg中存储两个值?

时间:2014-05-26 19:29:26

标签: c linux getopt-long

如果我定义

static struct option long_option[]={ {"add", 1, 0, 'a'} }

我可以在optarg中存储两个值吗?这是我想要使用的代码:

./a.out --add Tommy 123-123-123

我希望使用--add一次存储两个值,Tommy和123-123-123。

1 个答案:

答案 0 :(得分:0)

我怕你不能。根据getopt手册页,getopt使用下一个参数。所以你可以:

  • 使用./a.out --add 'Tommy 123-123-123'并且引号使shell将'Tommy 123-123-123'作为单个参数
  • 或手动编程您自己的选项解析器