C语言导航 7.2函数的调用

第二节 函数的调用

  • 调用基本概念

  • 函数的实参与形参

  • 函数的嵌套与递归

7.2.1调用基本概念

1.说明:函数的调用即是在指定位置,让函数执行相应任务。

2.方式:对于有返回值的函数,可在调用时对函数进行运算操作,对于没有返回值的则不可以;对于有参函数,可在调用时在参数列表填写相应实参,对于没有参数的函数则不用加。

3.注意:

①对库函数的操作,要了解函数的类型与形参,并记得在预处理命令中包含进相关的库。

②函数的参数可以有多个,但函数的返回值最多只有一个。

7.2.2函数的实参与形参

1.说明:函数利用实参与形参,使调用时的原始数据可以在函数中继续使用。

2.实参要求: ①实参要与形参依次对应,类型必须相同,可以不必一致。

②形参与实参的数量要相等,并用","隔开,而实参前不用写类型。

③对于无参函数,函数名后的括号是不能少的。

3.形参要求:

①形参要加类型,并用","隔开。

②在函数中,将使用形参进行操作,注意命名。

4.注意:

①在调用函数时,虽然形参与实参均表示原始数据,但对于机器来说,形参是一个另外开辟空间的相同值,即对形参的操作是相同值,但不是同一空间。

②对于简单的变量传送,由于函数是另开空间操作的,所以调用前后其值不发生改变。但对于数组名、地址等操作因为传送的是地址,所以调用前后可以改变其内容。

③C语言中函数传参是前后固定的,但系统中stdarg.h库函数可以将参数数变为任意值。

7.2.3函数的嵌套与递归调用

1.嵌套说明:嵌套即是多个函数合理的相互调用。

2.嵌套注意点:

①只允许嵌套调用,不允许嵌套定义,即函数的定义仅在函数外发生,函数的声明可以在函数外和主函数中发生。

②除主函数以外的其他函数均是平级的,所以可以相互调用或被主函数调用,而主函数不可以被调用。

3.递归说明:递归是嵌套的一种特殊情况,即除主函数外的函数自己调用自己。

4.递归注意点:

①递归的规范与嵌套相同,在编写时注意合理的结束递归,避免死循环。

②在递归时,参数的变化可能是多变的,编写时需注意逻辑关系。

③同样编写循环,递归的资源是比普通循环高的,所以谨慎使用。

相关推荐
C++ 老炮儿的技术栈7 小时前
我们在设计tcp协议时,要传一个字符串过去,报文:头十长度十内容,是否要把‘\0‘也填入,长度是否包含‘\0‘
开发语言·数据结构·c++·mfc·c
传奇开心果编程8 小时前
【Rust入门练中学】第2课:变量、可变性与常量
开发语言·学习·rust
zr想努力8 小时前
从0开始配置Perforce4环境
开发语言
Navigator_Z9 小时前
LeetCode //C - 1252. Cells with Odd Values in a Matrix
c语言·算法·leetcode
幸运小圣9 小时前
PointerEvent 常用属性与事件整理【JavaScript】
开发语言·javascript·ecmascript
长谷深风11110 小时前
评测AI Agent:三种裁判各司其职
java·大数据·开发语言·人工智能·ai agent
边境悍匪10 小时前
蜗牛学苑 Java 智能体学习 Day42|项目周开发技术汇总 1 思维导图复盘
java·开发语言·spring boot·学习·spring
君顾110 小时前
本地托管机构管理源码实战:需求拆解、数据建模与多端部署
java·开发语言·托管
是隼人11 小时前
buuctf-pwn [NewStarCTF 2023 公开赛道]stack migration(64位栈迁移)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
传奇开心果编程12 小时前
【Rust入门练中学】 第3课:数据类型
开发语言·学习·rust