1

我在网上找到的所有关于使用的getopt_long示例(例如 这里的)都struct option将长选项声明为static.

我不明白为什么所有这些示例都声明了一个静态变量,我不明白为什么应该这样做,并且手册页也没有说明这一点。

我应该将此变量声明为静态变量吗?为什么?

4

1 回答 1

2

原因是效率。如果声明struct option long_options[]非静态,它将在进入主函数时在运行时构建,但如果它声明为静态,它将在编译时构建。

但它会以任何一种方式工作。

于 2014-10-01T13:12:00.523 回答