getopt_long函数的原型如下:(#include<getopt.h>) getopt_long(int argc, char * const argv[], const char *optstring, const struct option *longopts, int *longindex); longopts是一个结构体类型,该结构体描述信息如下: struct option{ const char *name; //the name of the long option int has_arg; //no_argument(0); required_argument(1);optional_argument(2) int *flag; //NULL:return val; int val; //the value to return } 具体的例子: #include<getopt.h> #include<stdio.h> const char *shortopt = "hi:"; struct option longopt[] = { {"help", 0, NULL, 'h'}, {"input", 1, NULL, 'i'} }; int main(int argc, char ** argv) { int nextopt = getopt_long(argc, argv, shortopt, longopt, NULL); switch (nextopt) { case 'h': printf("this is help option\n"); break; case 'i': printf("the string you input is:\n%s\n",optarg); break; } return 0; } 测试: ./getopt_long -h ./getopt_long -i "hello world"
getopt_long函数用法
最新推荐文章于 2023-06-25 21:17:14 发布