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
相关推荐
saber_andlibert5 分钟前
【C++转GO】文件操作+协程和管道
开发语言·c++·golang
历程里程碑21 分钟前
滑动窗口解法:无重复字符最长子串
数据结构·c++·算法·leetcode·职场和发展·eclipse·哈希算法
星火开发设计1 小时前
广度优先搜索(BFS)详解及C++实现
数据结构·c++·算法··bfs·宽度优先·知识
oioihoii1 小时前
C++数据竞争与无锁编程
java·开发语言·c++
dddddppppp1232 小时前
c 模拟一个fat16文件系统
c语言·c++·算法
挖矿大亨2 小时前
C++中左移运算符重载
开发语言·c++
CoderCodingNo3 小时前
【GESP】C++五级真题(数论-素数、贪心思想考点) luogu-B4050 [GESP202409 五级] 挑战怪物
开发语言·c++·算法
~光~~3 小时前
【记录——内核模块加载到内核】基于鲁班猫4 rk3588s
c++·学习·rk3588s
老王熬夜敲代码3 小时前
C++模版元编程2
开发语言·c++
hope_wisdom3 小时前
C/C++数据结构之队列基础
c语言·数据结构·c++·队列·queue