windows下的C语言命令行参数
程序员文章站
2022-06-05 17:14:13
...
这篇文章主要参考了这篇博文的内容自己去试了下,以填补一下C语言知识的空白
C语言命令行参数的使用
测试代码
#include <stdio.h>
void main(int argc,char** argv)
{
printf("%d\n",argc);
printf("%s\n",argv[0]);
printf("%s\n",argv[1]);
printf("%s\n",argv[2]);
}
参数说明
我们给main函数传递两个参数argc和argv。
argc是int类型的,它表示的是命令行参数的个数。不用用户传递,它会根据用户从命令行输入的参数个数自动确定。
argv是char**类型的,它的作用是存储用户从命令行传递进来的参数。它的第一个成员是用户运行的程序名字
具体测试
将上面的代码保存为test.c,用gcc编译生成目标文件为test并进行后续测试
1.在命令行下直接运行程序,没有传递其它任何参数
2.在命令行下输入test hello world
可以看到argc为3,第一个参数为test,第二个参数为hello,第三个参数为world
3.继续输入test hello world hello world
可以看到这时argc变为5,argv指数出了前面三个参数。当然还可以把后面的两个参数也进行输出。
4.如果命令行中传递的一个参数包括空格就需要用用“ ”将参数扩起来
我们将hello world整体当作一个参数传递就需要使用“hello world”。
需要注意的是argv的类型可以是char ** argv,char argv[ ] [ ],char *argv[ ]
上一篇: 电话号码的字母组合(第17题)