最近在Linux上开发C++程序时,通过int main(int argc,char[] argv)
通过命令行参数的方式向程序传参时真的很难用,这个时候就非常怀念python的argparse命令行参数解析包,那C++有没有类似的命令行参数解析库呢?大致了解下,发现真的有。所以本文将例举下C++中简单易用的命令行参数解析工具库。
1 gflags
Github:https://github.com/gflags/gflags
gflags是Google推出的命令行参数解析工具。不是header-only,需要编译,学习成本较高。
关于gflags的使用示例可参考:https://gohalo.me/post/package-gflags-usage.html
2 Boost Program Options
主页:https://www.boost.org/doc/libs/1_63_0/doc/html/program_options.html
依赖于Boost,如果你现在的项目已经依赖于Boost,可以尝试使用这个库。
3 getopt
Unix-like 系统下 C/C++ 程序的标准命令参数解析库。提供C风格的命令行参数解析功能,但是语法复杂且不易用,对有些功能的支持不是很完善,但是在Unix-like系统都可用。
4 cmdline
Github:https://github.com/tanakh/cmdline
cmdline是一个header-only的命令行参数解析工具,非常的轻量并且功能强大。
5 CLI11
Github:https://github.com/CLIUtils/CLI11
CLI11是一个header-only的命令行参数解析工具。
6 cxxopts
Github:https://github.com/jarro2783/cxxopts
cxxopts是一个header-only的命令行参数解析工具,需要正则表达式支持,在GCC4.8(Centos 7)需要升级GCC与G++版本。
7 argparse
名字和python的命令行参数解析库一样哈,哈哈哈。
Github:https://github.com/p-ranav/argparse
argpars是基于C++17的header-ongly的命令行参数解析库。
8 其他的命令行参数解析库
如果对上述介绍的库都觉得不合适,那么可以参考以下链接寻找更加适合你的命令行参数解析库:
本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:C++ – 常用的C++命令行参数解析第三方库
原文链接:https://www.stubbornhuang.com/2088/
发布于:2022年04月14日 11:27:41
修改于:2023年06月26日 20:18:16
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论
52