从结构上来说:
创新互联公司长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为清涧企业提供专业的网站制作、成都网站设计,清涧网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。
如:void getTime(char c)
{
}
你应该看出来了,参数只是函数的一部分,但不是必要的组成部分。
函数包括:
返回值,函数名,参数,函数体(一个语句组)
无参函数,是指在主调函数调用被调函数时,主调函数不向被调函数传递数据。无参函数一般用来执行特定的功能,可以有返回值,也可以没有返回值,但一般以没有返回值居多。
有参函数,是指在主调函数调用被调函数时,主调函数通过参数向被调函数传递数据。在一般情况下,有参函数在执行被调函数时会得到一个值并返回给主调函数使用。
扩展资料
1、定义有参函数的一般形式为:
函数类型 函数名(参数类型1 参数名1, 参数类型2 参数名2, …, 参数类型n 参数名n)
{
声明部分
语句部分
}
2、有参函数使用注意事项:
(1)在定义函数时,必须要指定形参的类型。实参与形参的个数必须相等,若不相等就是语法错误。此外,实参与形参的类型要相同或赋值兼容。最好是相同,这样不容易出错。如果不相同则实参按形参的类型转化,然后再送给形参。
(2)在传递数据时,实参与形参是按顺序一一对应的。
函数的参数分为形参和实参两种。
形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。
形参和实参的功能是作数据传送,发生函数调用时,主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。
举个例子:
定义一个函数s=f(a,b),功能是将a和b的差赋值给s,那么,a和b就是这个函数的两个参数。
扩展资料:
C语言的参数传递方式
方法有3种方式:值传递、地址传递、引用传递
tips:
被调用函数的形参只有函数被调用时才会临时分配存储单元,一旦调用结束占用的内存便会被释放
值传递和地址传递,传递的都是实参的一个拷贝
C语言中实参和形参之间的数据传递是单向的“值传递”,单向传递,只能由实参传给形参,反之不行
输出格式并没有选择%p而是选择了%d,因为十进制的数看起来更直观。
值传递
如果只是传递值的话:
#include stdio.h
//值传递传值
void swap( int x, int y);
int main()
{
int a=2,b=3;
printf("before:实参为a,b\na=%d,地址为%d\nb=%d,地址为%d\n\n",a,a,b,b);
swap(a,b);
printf("after:实参为a,b\na=%d,地址为%d\nb=%d,地址为%d\n\n",a,a,b,b);
return 0;
}
void swap(int x,int y)
{
int tmp;
tmp=x;
x=y;
y=tmp;
printf("inside:形参为x,y\nx=%d,地址为%d\ny=%d,地址为%d\n\n",x,x,y,y);
}
形参与实参在本质上是两个不同的东西。
比如函数f(x)=y=x²+2x,x就是函数的参数,我们用c语言把它写出来就是:
float
f(float
x)
{
float
y;
y=x*x+2*x;
return
y;
}
你看看与f(x)=y=x²+2x何其相似!
当我们要计算f(2)的函数值时,就让x=2,得到y=8,即f(2)=8。
在c语言这里,我们就把x叫“形参”,把2叫“实参”,可以看出它们是多么不同了吧!
如果有一个变量a=1,也可以计算f(a)=2,其实在计算时,把a的值赋给了x。a是实参,x仍然是形参。计算前后a的值并没有变化。
如程序中调用:c=f(a)+f(2),结果得到c=10。
值得注意的是,往往实参与形参使用同一个字母,比如都用x,但是这两个x是不同的变量,实参x把值赋给形参x后,就没有实参的什么事了,在函数中形参x值的变化也不会影响实参x的值。
说起它们的相同之处,就是它们的变量类型是一样的;说起它们的联系,就是有一次实参对形参的赋值;说起它们的区别,则是两个不同的变量。
啰嗦很多,不知是否说清,若有不明之处,请留言。