众所周知,我们可以通过getopt制定Linux自定义命令,并获取该命令及其参数来控制外部输入,但是我们只知道getopt支持单个字符的命令,如-d,-h args。如果我们想制定长命令的话,如想自定义帮助指令–help,则需要使用getopt的内部结构体option和getopt_long函数。
接下来会结合下面实例,在注释部分进行详细介绍。
下面这个实例主要功能是接收用户输入的一个文件路径,将该文件读入。读入后怎么处理就交给用户自己随意实现了。首先,需要用户在执行最终的可执行文件(.o)文件时输入–help命令来获取按照什么格式进行输入。得到提示后,用户可以再次启动.o文件,这次后面的input命令就可以根据刚才的提示输入了。
#include<iostream>
#include<unistd.h> //getopt的头文件
#include<getopt.h> //getopt_long的头文件
int main(int argc,char*argv[]){
int opt=0; //判断getopt_long是否执行成功的返回值
const char *optstring="hi:"; //存放自定义命令的字符串,其中h表示help,不需要跟参数;i:表示input,冒号表示需要跟参数(文件路径&#