C语言函数随笔

定义函数包括以下几个内容:
1.指定函数的名字,以便以后按照名字调用。
2.指定函数的类型,即函数返回值的类型。函数类型决定返回值的类型。
3.指定函数的参数的名字和类型,以便在调用函数时向他们传递数据。
4.指定函数完成怎样的操作,即函数实现的功能。
即: 类型名 函数名(参数类型名 参数名)
{
函数体
}

定义函数时函数名后面括号中的变量名称为“形式参数”;该值只在函数调用期间有效。定义函数中指定的形式参数在未被函数调用时,不占内存中的存储单元,只在发生调用时临时分配存储单元。调用结束后,形参被释放,不占用内存存储单元。
主调函数中调用一个函数时,函数名后面括号中的参数称为"实际参数"。
通过return语句将函数值带回到主调函数。返回值的类型应与函数类型一致,若函数不需要返回值,则不需要return语句,这时函数类型应定义为void类型。
return后面的值可以是一个表达式。

如果自己定义的函数在主调函数的后面,应该在主调函数中或在文件开头对被调用的函数作声明。函数声明只需在定义函数后面加一个分号。函数声明中的形参名可以省略,只写形参类型也可以。

函数不能嵌套定义,但能嵌套调用。
多个调用函数可以简写为一行函数,例如:
m=max2(a,b);
m=max2(m,c); 可写为:m=max2(max2(max2(a,b),c),d);
m=max2(m,d);

递归调用:在调用一个函数的过程中又出现直接或间接地调用该函数本身,成为函数的递归调用。使用if语句让其不变成无终止的递归调用。
递归问题的求解分为两个阶段:第一个阶段为回溯。第二个阶段为递推。

数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方,都可以用数组元素代替。因此数组元素也可以用做函数实参(但不能做形参),其用法与变量相同,都是向形参传递数组元素的值。
数组名也可以用做函数参数(包括实参和形参)。
用数组名作函数实参时,向形参传递的是实参数组首元素的地址。也就是说这两个数组共占一段内存单元。
数组作为形参,该数组的大小永远都是8,所以数组的大小也需要作为形参传过来。
void initArray(int array[],int len)
initArray(array,len);

形参和实参都可以使用数组名作为其名字。实参数组和形参数组类型应一致。
形参在定义函数时可以不指定形参数组长度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值