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
相关推荐
香蕉卜拿拿拿3 小时前
软件解耦与扩展的利器:基于C++与C#的插件式开发实践
c++
CoderCodingNo4 小时前
【GESP】C++五级真题(贪心和剪枝思想) luogu-B3930 [GESP202312 五级] 烹饪问题
开发语言·c++·剪枝
阿闽ooo5 小时前
深入浅出适配器模式:从跨国插头适配看接口兼容的艺术
c++·设计模式·适配器模式
oioihoii7 小时前
跨越进程的对话之从管道到gRPC的通信技术演进
c++
爱装代码的小瓶子8 小时前
算法【c++】二叉树搜索树转换成排序双向链表
c++·算法·链表
阳洞洞8 小时前
cmake中如何从include_directories中移除某个特定的头文件
c++·cmake
墨雪不会编程8 小时前
C++【string篇1遍历方式】:从零开始到熟悉使用string类
java·开发语言·c++
蓝色汪洋10 小时前
经典修路问题
开发语言·c++·算法
DARLING Zero two♡10 小时前
接入 AI Ping 限免接口,让 GLM-4.7 与 MiniMax-M2.1 成为你的免费 C++ 审计专家
开发语言·c++·人工智能
程序喵大人11 小时前
constexpr
开发语言·c++·constexpr