getopt_long() 参数详解
2013-05-19 11:14
281 查看
【blog.csdn.net/lanmanck】
原型为:int getopt_long(int argc, char * const argv[],
const char *optstring,
const struct option *longopts, int *longindex);
其中 argc argv[]就不讲了,是main()的原参数。
讲下optstring和logopts,例如ti的例程中有如下定义:
什么意思呢?这2个数组分别表示短/长参数的含义,这样getopt_long就知道怎么解析,具体一点:
-a 和 --audiofile是一个意思,但可以不同时指定,没有指定那getopt_long就找不到呗,没什么大不了。
另外shortOptions[]里面的冒号是什么意思?
例如上面的a:s:v:kt:,咦,为什么k后面就没有冒号了?可以跟t连在一起?
是这样的,如果该字母后面有冒号,表示该字母后面有所带的参数,例如我们输入-a myfile.h264 -k,这样我们在碰到-a时,就可以使用optarg得到myfile.h264了。而-k没有参数,我们碰到-k时自己处理一下即可。
还有个index,大家man一下了。以后有空再补充 。
原型为:int getopt_long(int argc, char * const argv[],
const char *optstring,
const struct option *longopts, int *longindex);
其中 argc argv[]就不讲了,是main()的原参数。
讲下optstring和logopts,例如ti的例程中有如下定义:
const Char shortOptions[] = "a:s:v:y:O:kt:lfohd:"; /* optstring,後面加':'表示該參數在使用時,後面需給設定值 */ const struct option longOptions[] = { /* name has_arg flag val */ {"audiofile", required_argument, NULL, 'a'}, /* 指向长选项名称(带两个短横线)的指针 */ {"speechfile", required_argument, NULL, 's'}, {"videofile", required_argument, NULL, 'v'}, {"display_standard", required_argument, NULL, 'y'}, {"display_output", required_argument, NULL, 'O'}, {"keyboard", no_argument, NULL, 'k'}, {"time", required_argument, NULL, 't'}, {"loop", no_argument, NULL, 'l'}, {"osd", no_argument, NULL, 'o'}, {"help", no_argument, NULL, 'h'}, {"exit", no_argument, NULL, 'e'}, {"daemonver", required_argument, NULL, 'd'}, {0, 0, 0, 0} };
什么意思呢?这2个数组分别表示短/长参数的含义,这样getopt_long就知道怎么解析,具体一点:
-a 和 --audiofile是一个意思,但可以不同时指定,没有指定那getopt_long就找不到呗,没什么大不了。
另外shortOptions[]里面的冒号是什么意思?
例如上面的a:s:v:kt:,咦,为什么k后面就没有冒号了?可以跟t连在一起?
是这样的,如果该字母后面有冒号,表示该字母后面有所带的参数,例如我们输入-a myfile.h264 -k,这样我们在碰到-a时,就可以使用optarg得到myfile.h264了。而-k没有参数,我们碰到-k时自己处理一下即可。
还有个index,大家man一下了。以后有空再补充 。
相关文章推荐
- Linux编程里getopt_long_only函数用法详解
- 关于listview监听方法onItemClick(AdapterView<?> parent, View view, int position, long id)里的四个参数详解
- Linux编程里getopt_long函数用法详解
- Linux命令选项及参数解析 getopt() getopt_long() 函数
- getopt_long()函数详解
- getopt和getopt_long系统调用解析命令行参详解
- 使用getopt_long()从命令行获取参数
- getopt_long()解析命令行选项参数
- getopt和getopt_long系统调用解析命令行参详解
- getopt() 与 getopt_long() 详解
- getopt和getopt_long系统调用解析命令行参详解
- getopt和getopt_long系统调用解析命令行参详解
- 使用getopt_long解析程序长选项参数
- perl模块 Getopt::Long解析参数
- getopt()、getopt_long()用法变详解
- Linux getopt_long参数
- 使用getopt_long解析程序长选项参数
- getopt和getopt_long函数使用详解
- Linux中getopt_long_only函数用法详解
- getopt()和getopt_long()函数参数分析