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 分钟前
蓝桥杯零基础到获奖-第4章 C++ 变量和常量
java·c++·蓝桥杯
培林将军14 分钟前
Visual Studio Code 之C/C++开发编译环境搭建
c语言·c++·vscode
@木辛梓1 小时前
指针,数组,变量
开发语言·c++·算法
yqsnjps74658ocz1 小时前
如何检查Visual Studio是否支持C++14?
c++·ide·visual studio
buvsvdp50059ac1 小时前
如何在Visual Studio中启用C++17或C++20?
c++·c++20·visual studio
yqsnjps74658ocz1 小时前
如何在Visual Studio中设置项目为C++14?
java·c++·visual studio
buvsvdp50059ac1 小时前
如何在Visual Studio中启用C++14的特性?
java·c++·visual studio
沐怡旸1 小时前
【穿越Effective C++】条款17:以独立语句将newed对象置入智能指针——异常安全的智能指针初始化
c++·面试
程序猿本员2 小时前
1. 让自己习惯cpp
c++
Wild_Pointer.2 小时前
简析单目相机模型中的针孔模型
c++·数码相机·opencv