当前位置:网站首页 > 技术博客 > 正文

getopt函数



函数定义:

 



getopt()函数是用来解析命令行参数的。这里,主要解释getopt_long()。

    getopt_long()的头两参数,argc和argv分别是传递给main()的参数的个数和参数数组(和main()的argc和argv是一个概念)。

    getopt_long()中,optstring是一个字符串,表示可以接受的参数。例如,"a:b:cd",表示可以接受的参数是a,b,c,d,其中,a和b参数后面

跟有更多的参数值。(例如:-a host --b name)

    getopt_long()中,参数longopts,其实是一个结构的实例:

 


给个例子:

 


现在,如果命令行的参数是-a 123,那么调用getopt_long()将返回字符'a',并且将字符串123由optarg返回(注意注意!字符串123由optarg带

回!optarg不需要定义,在getopt.h中已经有定义)
那么,如果命令行参数是-c,那么调用getopt_long()将返回字符'c',而此时,optarg是null。

最后,当getopt_long()将命令行所有参数全部解析完成后,返回-1。

看来,我说的有点混乱,那么,看个例子,我相信,代码最能说明问题:

 


编译后,假设生成a.out,可以试验一下。
https://blog.csdn.net/kunikida/article/details/a.out -a hello -c
输出:
starting...
It's a!
string of a:hello
It's c!
end...

版权声明


相关文章:

  • 黑客流量攻击收费2025-01-02 09:01:06
  • jieba分词库实现原理2025-01-02 09:01:06
  • 反序列化 java2025-01-02 09:01:06
  • 开机启动项管理win102025-01-02 09:01:06
  • 深度优先搜索算法原理和实现2025-01-02 09:01:06
  • 树状数据结构怎么实现2025-01-02 09:01:06
  • 黑客软件app2025-01-02 09:01:06
  • 程序加密原理2025-01-02 09:01:06
  • ftp传输工具2025-01-02 09:01:06
  • pymysql 安装2025-01-02 09:01:06