函数
(以下代码都在VS中书写,略有不同请谅解)
1.1函数的定义与声明
函数的定义的一般格式:
类型说名符 函数名(类型说明符 形参变量1,类型说明符 形参变量2,...)
{
声明语句部分;
执行语句部分;
}
调用函数必须遵循“定义在先,使用在后”的原则。
与Java函数的不同之处:
访问修饰符 返回值类型 函数名称(参数类型 参数名称)
{
执行语句;
return 返回值;(无返回值时可以省略)
}
1.2函数的返回值
a.函数的值只能通过return语句返回主调函数,当遇到return时,方法中止执行。
b.一个函数最多只能返回一个值,不能返回多个值;不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。
c.返回值的数据类型必须与函数声明时返回值的数据类型匹配。如果两者不一致,则以函数类型为准,自动进行类型转换。
d.如果函数值为整型,则在定义是可以省去类型说名(不推荐省略)。
1.3函数的参数
函数的参数分为形参和实参两种,作用是实现数据的传递。
a.定义函数时,函数名后的参数称为形式参数,简称形参。
b.有参函数再调用时,主调函数传递给被调函数的数据称为实际参数,简称实参。
实参和形参之间的关系:
a.实参的个数,类型应该和形参的个数和类型一致。
b.实参和形参分别属于主调函数和被调函数,具有不同的内存单元。
c.C语言中实参和形参的结合采取的是“单项值传递”方式,只有实参传递参数给形参,形参不会穿参数给实参。
1.4函数的调用
C语言中,函数调用的一般形式为:
函数名([实际参数列表])
实际参数列表是函数入口参数的实际值。
注意:
参数的个数,类型和顺序,应该与被调用函数所要求的参数个数,类型和顺序一致,才能正确地进行数据传递。
调用函数的方式:
a. 函数表达式(需含有返回值)
c=add(a+b);
b. 函数语句(无返回值)
function();
c. 函数实参(必须有返回值)
d=add(a,add(b,c));