#include<unistd.h>
int getopt(int argc,char * const argv[ ],const char * optstring);

它是用来分析命令行参数的函数。参数optstring 则代表欲处理的选项字符串。

  • 字母后没有符号: 不带值的参数,定义即参数本身
  • 字母后带一个冒号: 必须带值,值被全域变量optarg指向。
  • 字母后带两个冒号: 可选值的参数,参数可加可不加。

getopt()每次调用会逐次返回命令行传入的参数,当没有参数的最后一次调用会返回-1。

参数返回的是字符串的,有些需要转化为整形,可以用下面函数.

#include<stdlib.h>
定义函数
unsigned long strtoul(const char *nptr,char **endptr,int base);
将字符串转化为长整形。
base 代表进制。base是0的话会根据字符串自动选择类型。若参数endptr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由endptr返回