http://blog.sina.com.cn/s/blog_4db5519f01014j77.html
环境:DM365 DVSDK DEMO
文件:Main.c
函数:parseArgs()
在该函数中,初始化结构体数组:const struct option longOptions[],其原型定义在getopt.h中:
#define no_argument
#define required_argument
#define optional_argument
struct option {
};
const char *name是不带短横线的选项名,前面没有短横线。譬如“help”、“verbose”之类。
int has_arg 描述了选项是否有选项参数。如果有,是哪种类型的参数,此时,它的值一定是下表中的一个。符号常量数值含义
no_argument
required_argument
optional_argument
int *flag
int val 这个值是发现了长选项时的返回值,或者flag不是 NULL时载入*flag中的值。典型情况下,若flag不是NULL,那么val是个真/假值,譬如1 或0;另一方面,如果flag是NULL,那么val通常是字符常量,若长选项与短选项一致,那么该字符常量应该与optstring中出现的这个选项的参数相同。
int main(int argc, char *argv[])
{