getopt():用来解析命令行参数
#include<unistd.h>
extern char * optarg;
extern int optind;
extern int opterro;
extern int optopt;
getopt(int argc, char ** argv, char *options)
按照字符串options提供的选项在参数列表argv中解析出选项。
注:选项和参数
1. 单一字符是选项
2. 字符后面加:表示选项后需要加一个参数(隔一个空格或直接跟在后面)
3. 字符后面加两个::,表示紧接着需要一个参数
eg:
getopt(argc, argv, "ab:c:de::")
执行:
./main file1 -a -b -c code -d file2 -e file3
结果:
option : a optarg : (null) opterror : 1 optind : 3
option : b optarg : -c opterror : 1 optind : 5
option : d optarg : (null) opterror : 1 optind : 7
option : e optarg : (null) opterror : 1 optind : 9
argv变成:
./main -a -b -c -d -e file1 code file2 file3