没有合适的资源?快使用搜索试试~ 我知道了~
基于mjpg-streamer-r63的源码分析之:基础知识详细解释[二].pdf
4星 · 超过85%的资源 需积分: 10 19 下载量 17 浏览量
2013-09-11
16:40:42
上传
评论
收藏 503KB PDF 举报
温馨提示
试读
4页
基于mjpg-streamer-r63的源码分析之:基础知识详细解释,更好更快的看懂c语言代码,理解c语言多线程编程
资源推荐
资源详情
资源评论
BBS.SASAOO.COM -- 财经 医疗 软件 娱乐 养生 综合信息论坛
BBS.SASAOO.COM -- 财经 医疗 软件 娱乐 养生 综合信息论坛
基于 mjpg-streamer-r63 的源码分析之:基础知识详细解释[二]
在 mjpg-streamer 的程序中,经常会看到 getopt_long_only 这个函数,这是一个抓取或者说是解析命令行参数的一
个 linux 下的 API 函数。主要分为下面几种:
#include <getopt.h>
int getopt_long(int argc, char * const argv[],const char *optstring,const struct option *longopts, int
*longindex);
int getopt_long_only(int argc, char * const argv[],const char *optstring,const struct option *longopts, int
*longindex);
说明:函数中的 argc 和 argv 通常直接从 main()到两个参数传递而来。optstring 是选项参数组成的字符串,如果
该字符串里任一字母后有冒号,那么这个选项就要求有参数。下一个参数是指向数组的指针,这个数组是 option 结
构数组,option 结构称为长选项表,其声明如下:
[cpp] view plaincopyprint?
1. struct option {
2. const char *name;
3. int has_arg;
4. int *flag;
5. int val;
6. };
结构中的元素解释如下:
const char *name:选项名,前面没有短横线。譬如"help"、"input"之类。
int has_arg:描述长选项是否有选项参数,如果有,是哪种类型的参数,其值见下表:
符号常量 数值 含义
no_argument 0 选项没有参数
required_argument 1 选项需要参数
optional_argument 2 选项参数是可选的
int *flag:
如果该指针为 NULL,那么 getopt_long 返回 val 字段的值;如果该指针不为 NULL,那么会使得它所指向的结构
填入 val 字段的值,同时 getopt_long 返回 0
int val:
如果 flag 是 NULL,那么 val 通常是个字符常量,如果短选项和长选项一致,那么该字符就应该与 optstring 中出
现的这个选项的参数相同;最后一个参数:longindex 参数一般赋为 NULL 即可;如果没有设置为 NULL,那么它
就指向一个变量,这个变量会被赋值为寻找到的长选项在 longopts 中的索引值,这可以用于误诊断。
资源评论
- dzyswy2015-03-17主要讲解了对参数的获取,信息有点少
pang_2011
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功