C语言命令行传参
C语言命令行传参简介
我们在执行程序时,可以从命令行中将一定的值传入 C 程序。
这些值被称为命令行参数。
在我们想要从外部将一定的内容传给程序时,这些参数就显得尤为重要。
参数形式
#include <stdio.h>
int main( int argc, char *argv[] ){ //argc与argv[][],argv也可采用char **argv的格式
return 0;
}
命令行参数对于主函数 m a i n main main存在。一般采用 a r g c argc argc (Argument Count, 命令行参数个数) 与 a r g v argv argv (Argument Value, 命令行参数) 进行命名。
参数含义
我们可以通过一个简单的小程序来了解这两个参数的具体含义:
#include <stdio.h>
int main( int argc, char *argv[] )
{
int i;
for(i = 0;i < argc; ++i){
printf("argv[%d] = \"%s\"\n", i, argv[i]);
}
return 0;
}
输入(在命令行中)如下一段测试数据:
./test.exe 1 2 3 4 5 6
可得:
argv[0] = "D:\Files\Work_Files\Code Files\Visual Studio Code Files\Cppfiles\C_Project\TestProject_12\test.exe"
argv[1] = "1"
argv[2] = "2"
argv[3] = "3"
argv[4] = "4"
argv[5] = "5"
argv[6] = "6"
于是我们可以得到
a
r
g
c
argc
argc与
a
r
g
v
argv
argv的真正含义
a
r
g
v
argv
argv 获取了从命令行输入的数据
而
a
r
g
c
argc
argc对输入的参数的数量进行了统计,从而得到了相对的参数的总量