c++如何处理命令行参数 main函数的argc和argv详解【教程】

admin 百科 14
argc是命令行参数个数(含程序名),至少为1;argv是字符串指针数组,argv[0]为程序名,argv[1]至argv[argc-1]为用户参数,argv[argc]为空指针。

c++如何处理命令行参数 main函数的argc和argv详解【教程】-第1张图片-佛山资讯网

C++ 程序启动时,main 函数接收的命令行参数由操作系统传递,通过两个形参:argc(argument count)和 argv(argument vector)来访问。它们不是可选的“功能”,而是 C/C++ 标准规定的程序入口接口,理解它们是编写可交互、可配置命令行工具的基础。

argc 是什么?它代表参数个数,包括程序名本身

argc 是一个非负整数,表示命令行中输入的“单词”总数(以空格分隔,引号内空格不拆分)。注意:第一个“单词”永远是程序被调用时的路径或名称(如 ./a.out 或 mytool.exe),所以即使不带任何额外参数,argc 至少为 1。

常见情况举例:

  • ./app → argc == 1
  • ./app -v --input data.txt → argc == 4("./app"、"-v"、"--input"、"data.txt")
  • ./app "hello world" 123 → argc == 3(引号使 "hello world" 视为单个参数)

argv 是什么?它是字符串指针数组,每个元素指向一个参数字符串

argv 是 char* 类型的数组(即 char**),大小为 argc。argv[0] 指向程序名(完整路径或简名,取决于如何调用);argv[1] 到 argv[argc-1] 指向用户输入的各个参数;argv[argc] 保证为 nullptr,可用于安全遍历。

立即学习“C++免费学习笔记(深入)”;

标签: 操作系统 app 工具 ai c++

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~