亲宝软件园·资讯

展开

C和C++中argc和argv的含义及用法详解

INEVGVUP 人气:0

C和C++中argc和argv的含义以及用法

各位小伙伴在接触C和C++的时候,总会看到这样的东西

在这里插入图片描述

很多伙伴应该都一直注意到了这两个参数,但是很多伙伴编写多年C和C++代码,还没有使用过这两个参数。argcargv这两个参数看起来很复杂,其实一点都不复杂,接下来跟着小编一探究竟吧!

为什么我们自己很少使用到这两个参数

很多伙伴从接触C语言开始,就一直在集成开发环境里编写代码。在集成开发环境中,我们运行自己所编写的C语言代码,只需要点击相应的按键即可。但是接触过linux系统,我们往往就需要用命令行的方式来编译和执行程序。那么在命令行方式下,此时这两个参数就很有作用了,能够非常方便地帮助我们实现一些功能。下面来看看具体的含义以及使用方法。

argc和argc的含义

argcargument count的缩写,代表参数的个数
argvargument vector的缩写,可以理解成参数序列
编写如下代码

#include<stdio.h>
  
int main(int argc, char* argv[]){
    printf("The value of argc is %d\n", argc);
    printf("The values of argv are:\n");
    for(int i = 0; i < argc; ++i)
        printf("argv[%d] is %s\n", i, argv[i]);
    return 0;
}

此文件命名为test1.cpp,在linux环境下使用如下命令进行编译

gcc test1.cpp -o test1

然后执行如下命令

./test1 input1.txt input2.txt HaHa 

程序输出如下

在这里插入图片描述

从这个输出结果就可以清晰地看出argc和argv的含义。argc就是参数的个数,就是命令行中以空格分隔的参数的个数,argv就是各个以空格分隔的参数字符串,所以很简单是吧,我们可以再来看一下具体有哪些作用。

两个参数的应用

很多时候,我们需要在C代码中处理文件,那么通过这种参数名,可以指定输入文件名,输出文件名等等,这样就非常有用。
还有一种使用较多的就是,通过这种参数,比如输入了哪些字符串,来决定执行哪些函数,控制输出的内容等等,这些都是非常有用的。

加载全部内容

相关教程
猜你喜欢
用户评论