/test -v中-v就是一个短选项....{"version", 0, NULL, 'v'}, version 即为长选项的名称, 即按如下形式--version, 0 表示该选项后面不带参数, NULL 表示直接将v返回(字符v在ascii码中对应的数值...下面我们用短选项执行一下程序 ....getopt_long 就相当于 getopt , flag 和 longindex都不起作用了.
getopt_long 和 getopt_long_only
下面解释一下 getopt_long.../test: invalid option -- 'o'
unknown option
username is -help
我们看到使用短选项标识符 - 指向长选项时, 程序还是会按短选项来处理, 即一个字符一个字符的解析