getopt不能反复使用的问题
来源:互联网 发布:联通4g网络dns劫持 编辑:程序博客网 时间:2024/03/29 19:21
尝试程序中利用输入获取命令参数,如下程序:
#include <stdio.h>#include <unistd.h>int main(){ int argc = 2; char *argv[10]; int oc; argv[0] = "help"; argv[1] = "-l"; while((oc = getopt(argc,argv,"l")) != -1) { switch(oc) { case 'l': printf("help long option\n"); break; default: printf("error option\n"); break; } }printf("%d\n",optind);argc = 2; argv[0] = "help"; argv[1] = "-s"; optind = 0; while((oc = getopt(argc,argv,"l")) != -1) { switch(oc) { case 'l': printf("help long option\n"); break; case '?': printf("help error option\n"); break; default: printf("error option\n"); break; } } return 0;}
char *optarg——当前选项参数字串(如果有)。
int optind——argv的当前索引值。当getopt()在while循环中使用时,循环结束后,剩下的字串视为操作数,在argv[optind]至argv[argc-1]中可以找到。
int opterr——这个变量非零时,getopt()函数为“无效选项”和“缺少参数选项,并输出其错误信息。
int optopt——当发现无效选项字符之时,getopt()函数或返回'?'字符,或返回':'字符,并且optopt包含了所发现的无效选项字符
需要清除。
getopt和getopt_long函数的使用方法转
http://blog.csdn.net/mr_jj_lian/article/details/6835137
http://blog.csdn.net/mr_jj_lian/article/details/6835352
0 0
- getopt不能反复使用的问题
- 使用websphere反复出现不能找到spring方法的错误
- getopt()的初始化问题
- getopt函数的使用
- getopt函数的使用
- getopt的使用
- getopt函数的使用
- getopt函数的使用
- getopt函数的使用
- getopt函数的使用
- getopt()的使用
- getopt()函数的使用
- getopt函数的使用
- getopt的使用
- getopt函数的使用
- getopt函数的使用
- getopt函数的使用
- python getopt的使用
- SQL索引一步到位
- 学习写Makefile文件
- 实现Android 5.0 Material Design的点击任意View的水波效果
- 线性代数笔记(特征问题与矩阵相似)
- 关于java异常为什么要声明的原理
- getopt不能反复使用的问题
- QQ通信原理及QQ是怎么穿透内网进行通信的?(关于P2P)
- java多线程之共享资源
- dedecms相关文章调用dede:likearticle和修改关键词关连文章
- R语言
- unity学习之动态显示图片
- 开辟内存空间
- cocos2dx3.2开发 RPG《Flighting》(十)为角色加上血量条
- JDK安装后 没有tools.jar 和dt.jar包的解决办法,