扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
主函数的实参是由操作系统传递的。
成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、成都做网站、龙泉驿网络推广、小程序开发、龙泉驿网络营销、龙泉驿企业策划、龙泉驿品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联公司为所有大学生创业者提供龙泉驿建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
c++规定的主函数标准格式(c语言未具体规定):int
main(int
argc,
char
*argv[])
其中int
argc
表示操作系统传递给程序的参数个数,char
*argv[]
存储各个参数。
例如:
若有程序如下:
int
main(int
argc,
char
*argv[])
{
int
i;
printf("您输入了
%d
个参数\n分别是:",argc);
for(i=0;i
运行-
cmd
-
输入
c:\app.exe
hello
world!
回车
执行结果将是:
您输入了
3
个参数
分别是:c:\app.exe
hello
world!
"
注意,第一个参数值将是你程序的文件名。
#include cstdlib
#include iostreamusing namespace std;
int calculate( int a, int b, int c )
{
return a*a*a+b*b*b+c*c*c;
}
int main(int argc, char *argv[])
{
int x, y, z, l;
cout " 计算等式的结果 " endl;
cout " ------------------------------------------------- " endl;
cout " 请输入x,y和z的值: ";
cin x y z;
l = calculate( x, y, z );
cout " 这3个数的立方和是 " l endl;
system("PAUSE");
return EXIT_SUCCESS;
}
做好了,请检查。。。
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
C语言中参数分为实际参数(实参)与形式参数(形参)。
实际参数是在调用时传递个该函数的参数。
形式参数是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传如的参数。
实际参数是在调用时传递个该函数的参数.
举一个很简单的例子:
#includestdio.h
int f(int b) // b为形参
{
return b;
}
void main()
{
int a=1;
printf("%d",f(a));// a为实参
}
如果是诸如函数声明int fun(int b[]),这个是传的地址,如果fun内部有赋值操作,那么会改变数组b的元素的值
如果是执行语句fun(b[i]);那么传的就是b[i]这个值,执行完fun后,b[i]的值不会变
a是一个指向指针的指针,a里面的内容是另一个指针p的地址,那么*a就是p的地址,**a就是*p。
同理,b的内容是另一个指针q的地址,*b就是q的地址,**b就是*q
t = *a, 那么t的内容就是p的地址,
*a = *b, a里面的内容变成了q的地址,即*a是q的地址,**a就是*q
*b = t, b里面的内容变成了p的地址,即*b是p的地址,**b就是*p
这三句,将**a的值和**b的值互换了,是对指针的操作。
传值方式:向函数传递参数时,先复制一份参数,然后才将复制品传给参数。函数中所有对参数的操作,就只是在使用复制品。不会改变传递前的参数本身。
传址方式:将地址传送给函数,函数对该地址的内容操作,相当于对实参本身的操作
无参函数,是指在主调函数调用被调函数时,主调函数不向被调函数传递数据。无参函数一般用来执行特定的功能,可以有返回值,也可以没有返回值,但一般以没有返回值居多。
有参函数,是指在主调函数调用被调函数时,主调函数通过参数向被调函数传递数据。在一般情况下,有参函数在执行被调函数时会得到一个值并返回给主调函数使用。
扩展资料
1、定义有参函数的一般形式为:
函数类型 函数名(参数类型1 参数名1, 参数类型2 参数名2, …, 参数类型n 参数名n)
{
声明部分
语句部分
}
2、有参函数使用注意事项:
(1)在定义函数时,必须要指定形参的类型。实参与形参的个数必须相等,若不相等就是语法错误。此外,实参与形参的类型要相同或赋值兼容。最好是相同,这样不容易出错。如果不相同则实参按形参的类型转化,然后再送给形参。
(2)在传递数据时,实参与形参是按顺序一一对应的。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流