为什么要给main函数传参呢?
首先,main函数是可以不传参的。也就是说父进程调用子程序并且给子程序不是必须的。int main(void)这种形式就表示我们可以不用给main传参。
有时候我们希望程序有一种灵活性,所以选择再执行程序时通过传参来控制程序中的运行,以达到不需要重新编译程序就可以改变程序运行结果的目的。
如何给main函数传参
表面上:给main传参通过argc和argv这两个C语言预定的参数来实现。argc时int类型表示再程序运行时给main传递了几个参数;而argv时一个字符串数组,这个数组用来存储多个字符串,每个字符串就是给main函数传递的一个函数;所以argv[0]就是给main函数传递的第一个参数,argv[1]就是第二个参数。
程序实例:
#include <stdio.h>
//int main(void)
int main(int argc, char *argv[])
{
printf("main函数传参个数时:%d\n",argc);
int i;
for( i = 0; i<argc; i++)
{
printf("第%d个参数时%s\n",i,argv[i]);
}
if(argc < 2)
{
printf("we need more param\n");
return -1;
}
if (!strcmp(argv[1],"0"))
{
printf("boy\n");
}
else if(!strcmp(argv[1],"1"))
{
printf("gril\n");
}
else
{
printf("unknown \n");
}
r