main函数中argc和argv是什么意思

在C和C++中,int main(int argc, char* argv[])语句作为程序的入口,在main函数中常常用到。

  • argc:argument count,参数的数量。argc是一个整型数,代表传入程序的命令行参数的数量。程序名称是第一个参数,所以如果没有传额外的参数的话,那么argc的值就是1。
  • argv:argument vector,参数向量(或者容器)。argv是一系列字符串(char*指针),每个元素指向一个命令行参数。第一个元素是 argv[0]是程序的名称,后面的元素是传给程序的参数。

下面是例子:

c 复制代码
#include <stdio.h>

int main(int argc, char* argv[]) {
    printf("Argument count (argc): %d\n", argc);

    // Print each command-line argument
    for (int i = 0; i < argc; ++i) {
        printf("Argument %d: %s\n", i, argv[i]);
    }

    return 0;
}

使用./my_program arg1 arg2运行程序,则输出为:

yaml 复制代码
Argument count (argc): 3
Argument 0: ./my_program
Argument 1: arg1
Argument 2: arg2
相关推荐
不知所云,7 分钟前
4. vscode c++ 环境及工程搭建 clangd + mingw
c++·ide·vscode·开发环境·clangd
kyle~11 分钟前
数据结构---堆(Heap)
服务器·开发语言·数据结构·c++
apocelipes11 分钟前
Linux的binfmt_misc机制
linux·c语言·c++·python·golang·linux编程·开发工具和环境
渡我白衣12 分钟前
哈希的暴力美学——std::unordered_map 的底层风暴、扩容黑盒与哈希冲突终极博弈
java·c语言·c++·人工智能·深度学习·算法·哈希算法
qq_4335545424 分钟前
C++ 最大子段和(动态规划)
开发语言·c++·动态规划
lijiatu1008625 分钟前
[C++] lock_guard、unique_lock与条件变量wait()函数
开发语言·c++
2509_9408802226 分钟前
CC++链接数据库(MySQL)超级详细指南
c语言·数据库·c++
_F_y39 分钟前
二分:山脉数组的峰顶索引、寻找峰值、寻找旋转排序数组中的最小值、点名
c++·算法
Elias不吃糖42 分钟前
克隆图(LeetCode 133)——用数组做映射的 DFS 解法
c++·算法·leetcode·深度优先
不知所云,43 分钟前
1. 开篇简介
c++·vulkan