最近在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
当前分类随机文章推荐
- C++ - 函数返回多个返回值的方法总结 阅读2609次,点赞0次
- C++ - 使用C++标准库过滤Windows文件名中的非法字符 阅读4989次,点赞1次
- C++ - 判断两个字符串是否相等方法总结 阅读748次,点赞0次
- C++ - 我在项目实际开发中用到的第三方库/开源项目,涵盖网络、加密解密、GUI、网络、音视频、图片等等 阅读545次,点赞0次
- C++ - websocket++不依赖boost,基于独立Asio编译方法 阅读122次,点赞0次
- C++ - 使用正则判断字符串是否全是中文 阅读1666次,点赞0次
- C++ - 我的代码风格/代码规范备忘 阅读1090次,点赞0次
- C++ - 获取std::vector中的最小值、最大值以及对应的索引 阅读485次,点赞0次
- C++ - Yolo的letterbox图片预处理方法,缩放图片不失真 阅读298次,点赞0次
- C++读取Shp文件并将Shp转化为DXF 阅读3509次,点赞1次
全站随机文章推荐
- Modern OpenGL - GLSL着色语言2:GLSL入口函数和GLSL中的变量 阅读3036次,点赞0次
- 三维重建 - 基于RBF的三维网格重建 阅读5923次,点赞7次
- Python - 配置Yolov5出现ImportError: cannot import name 'PILLOW_VERSION' from 'PIL'错误 阅读1728次,点赞0次
- 资源分享 - Digital Character Development - Theory and Practice , Second Edition 英文高清PDF下载 阅读1721次,点赞0次
- 资源分享 - Ray Tracing - The Rest of Your Life英文高清PDF下载 阅读2740次,点赞0次
- 资源分享 - 统计学习方法(李航著) 高清PDF下载 阅读5622次,点赞3次
- WordPress - 禁止非管理员登录后台 阅读2004次,点赞0次
- TensorRT - Invalid Node - TopK,This version of TensorRT only supports input K as an initializer 阅读807次,点赞0次
- C++ - GBK编码下的全角字符转半角字符 阅读2068次,点赞0次
- 资源分享 - Introduction to 3D Game Programming with DirectX 9.0 英文高清PDF下载 阅读1314次,点赞0次
全部评论:1条