头文件
include
函数声明
int getopt(int argc,char const argv[ ],const char optstring);
全局变量
extern char *optarg;
extern int optind, opterr, optopt; //索引/错误输出标志/最后一个未知选项
getopt() 所设置的全局变量包括:
char *optarg——当前选项参数字串(如果有)。
int optind——argv的当前索引值。当getopt()在while循环中使用时,循环结束后,剩下的字串视为操作数,在argv[optind]至argv[argc-1]中可以找到。
int opterr——这个变量非零时,getopt()函数为“无效选项”和“缺少参数选项,并输出其错误信息。
int optopt——当发现无效选项字符之时,getopt()函数或返回’?’字符,或返回’:’字符,并且optopt包含了所发现的无效选项字符。
短参数的定义
getopt()使用optstring所指的字串作为短参数列表,象”1ac:d::”就是一个短参数列表。短参数的定义是一个-后面跟一个字母或数字,象-a,-b就是一个短参数。每个数字或字母定义一个参数。
其中短参数在getopt定义里分为三种:
1、不带值的参数,它的定义即是参数本身。
2、必须带值的参数,它的定义是在参数本身后面再加一个冒号。
3、可选值的参数,它的定义是在参数本身后面加两个冒号 。
