扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
main函数可以不带参数,也可以带参数,这个参数可以认为是 main函数的形式参数。
创新互联专注于墨江网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供墨江营销型网站建设,墨江网站制作、墨江网页设计、墨江网站官网定制、小程序制作服务,打造墨江网络公司原创品牌,更为您提供墨江网站排名全网营销落地服务。
C语言规定main函数的参数只能有两个,还规定argc(第一个形参)必须是整型变量,argv( 第二个形参)必须是指向字符串的指针数组。加上形参说明后,main函数的函数头应写为:
int main (int argc,char *argv[])
由于main函数不能被其它函数调用,因此不可能在程序内部取得实际值。那么,在何处把实参值赋予main函数的形参呢? 实际上,main函数的参数值是从操作系统命令行上获得的。当我们要运行一个可执行文件时,在DOS提示符下键入文件名,再输入实际参数即可把这些实参传送到main的形参中去。
DOS提示符下命令行的一般形式为:
C:\可执行文件名 参数 参数……
C语言的带参数的main函数格式为main(int argc,char* argv[]),其中argc为参数个数加1,argv为参数列表,从argv[1]开始。编译后生成可执行文件,可以在执行的程序后加参数,比如编译一个程序为test.exe,则在执行时可以输入:
test.exe 1 firestone
在这里,argc等于3,argv[0]为"test.exe",argv[1]为"1",argv[2]为"firestone"。
如果有下面的程序:
#include stdio.h
void main(int argc,char *argv[])
{
printf("You've input %d parameters.\n",argc-1);
for(int i=1;iargc;i++)printf("The No.%d is:%s\n",i,argv[i]);
}
则上面的输入会产生如下运行结果:
You've input 2 parameters.
The No.1 is 1
The No.2 is firestone
int main (int argc,char *argv[]) 或者 int main (int argc,char **argv)
其中第一个表示参数的个数;第二个参数中argv[0]为自身运行目录路径和程序名,argv[1]指向第一个参数、argv[2]指向第二个参数……
测试例子:
#include stdio.h#include string.h
int main(int argc,char *argv[])
{
printf("argc= %d\n",argc);
while(argc--)
{
printf("%s \n",*argv++);
}
return 0;
}
1、main
英[meɪn];
意思:主要的;最重要的;
2、在C语言里是main()称之为主函数,是所有程序运行的入口。其余函数分为有参或无参两种,均由main()函数或其它一般函数调用,若调用的是有参函数,则参数在调用时传递。
对main()函数始终作为主调函数处理,允许main()调用其它函数并传递参数。main()函数既可以是无参函数,也可以是有参的函数。对于有参的形式来说,就需要向其传递参数。
扩展资料
main在C语言里的使用
1、在C99标准中定义main函数两种正确的写法
intmain(void);intmain(intargc,char*argv[]);
2、常见的不标准写法
voidmain()main()
3、主要说明带参数的main函数
intmain(intargc,char*argv[])
{
inti;
for(i=0;iargc;i++)
printf("%d:%s\r\n",i+1,argv[i]);
return0;
}
参考资料来源:百度百科—main函数
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流