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

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

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

下面是例子:

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
相关推荐
dtq04248 小时前
C++小案例 - 日志实战
开发语言·c++
码匠许师傅9 小时前
【C++三方组件】Qt 概览:桌面 C++ 的事实标准与许可证三轨
开发语言·c++·qt
码匠许师傅10 小时前
【C++三方组件】POCO:跨平台系统编程全家桶
开发语言·c++
WBluuue13 小时前
数据结构与算法:分块(一):块状数组、块状链表
数据结构·c++·算法·链表
必须得开心呀14 小时前
字节序大小端科普
c++·程序人生
会编程的小孩14 小时前
C++ 子集
c++
SunkingYang15 小时前
C++20 vs C++17:新特性对比与用法指南
c++·c++20·特性·版本·新特性·对比·c++17
前进吧-程序员15 小时前
C++20 协程入门实战:从 co_await 到一个 100 行的异步任务调度器
网络·c++·c++20
前进吧-程序员15 小时前
实战:C++20 协程 + io_uring 写一个 400 行的 echo server
网络·c++·c++20
青少儿编程课堂19 小时前
蓝桥杯青少组 + 全国青少年信息素养大赛 + 电子学会图形化考级|校园推箱子大挑战解析
c++·python·算法·bfs·信息学竞赛