C\C++ 命令行参数argc argv + 命令行运行程序

当我们需要用命令行来运行程序的时候,我们需要用到主函数的参数(argc 和 argv)

含义

argc: 整数,用来统计你运行程序时送给main函数的命令行参数的个数

argv[0] 指向程序运行的全路径名
argv[1] 指向在DOS命令行中执行程序名后的第一个字符串
argv[2] 指向执行程序名后的第二个字符串

操作

打开命令行
win+R
输入cmd回车
在这里插入图片描述
切换路径
用cd命令(即ChangeDirectory),我们切换路径到我们要运行的文件的目录下。
在这里插入图片描述
例如这样,我切换到了CodeBlocks的源文件文件夹所在的目录里,这个文件夹里有源代码和可执行的.exe文件。
在这里插入图片描述
这时候我想要运行code2.exe文件,我输入要运行的文件名code2.exe ,然后后面的可以输入多个空格隔开的字符串,它们会作为main()函数的参数。
在这里插入图片描述
我们用代码输出一下

#include <cstdio>
#include <cmath>
#include <algorithm>

int main(int argc, char **argv)
{
    printf("%d\n", argc);
    while(argc){
        printf("%s\n", argv[--argc]);
    }
    return 0;
}

在这里插入图片描述
argc为参数个数,3个明显正确

agrv[0]是地址,在IDE运行如下
在这里插入图片描述
在这里插入图片描述

作用

主要在于地址后面的字符串,比如说你要调用code2.exe里面的某个功能模块,你可以输入code2.exe function1 或者 code2.exe -w 之类的

源代码中检测argv[1]的内容,根据argv[1]的内容来运行相对应的模块。

参考来源

向南的博客 https://www.cnblogs.com/zhangxianhai/p/3587348.html
百度百科 https://baike.baidu.com/item/argc%20argv/10826112?fr=aladdin
yukiooy的博客 https://blog.csdn.net/yukiooy/article/details/4682989

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章