中暑虚脱

注册

 

发新话题 回复该主题

CLI11介绍及软件版本查询 [复制链接]

1#
白癜风的原因 http://pf.39.net/bdfyy/bdfyw/180110/5989991.html

带参数的程序可以让指令更加丰富多彩,比如,ls-l指令便是在ls指令后面添加了-l选项,通过不一样的选项,我们可以在终端看到不一样的运行结果。

我们也可以给自己的程序添加一些选项。一般情况下,我们需要把main()函数写成这样:

intmain(intargc,char*argv[]){//whatevercodeehrereturn0;}

这里argc即为参数的数量,argv[]即为各个参数的指针,我们可以简单写一个小程序来看看这两个参数是怎么回事:

intmain(intargc,char*argv[]){printf("argc=%d\n",argc);for(inti=0;iargc;i++){printf("argv[%d]:%s\n",i,argv);}return0;}

编译并运行:

mamba

asus-rog:test./bin/mainargc=1argv[0]:./bin/mainmamba

asus-rog:test./bin/mainhelloworldargc=3argv[0]:./bin/mainargv[1]:helloargv[2]:world

对于参数argc和argv其实就很好理解了。

要使用选项,则我们需要明确各个参数的意义。另外,参数能否交换位置呢?是否可以有像-l这样的以-开头的参数呢?为实现这些目的,我们可以使用cxxopt或者CLI11这个库。本文主要介绍CLI11这个库(实际上cxxopt更加流行)。

CLI11是一个仅有头文件的命令解释器。参考资料:

GitHub官方代码仓库:

分享 转发
TOP
发新话题 回复该主题