1.函数
函数(子程序),C语言中的函数就是一个完成某项特定任务的一小段代码.
C语言中函数一般分两类:库函数和自定义函数
2.库函数
2.1标准库和头文件
现成的常见函数的标准的库,所有C语言的开发人员都可以使用。使用库函数必须要有所对应的标准库的头文件
2.2库函数使用方法
根据文档学习:函数原型/函数功能介绍/参数和返回类型/代码举例/代码输出/相关知识链接
3.自定义函数
根据实际需要,自己设计和实现函数,自己使用
3.1语法格式
ret_type fun_name(形式参数)
{
}
ret_type是函数返回类型,有时返回类型可以是void,表示 什么也不返回
fun_name是函数名
括号中放的是形式参数
{ }括起来的是函数体
4.实参和形参
4.1实参
调用函数时,传递给函数的参数就是实际参数,简称实参。
实参是真实传递给函数的参数
4.2形参
函数定义中,函数名后面括号中的参数就是形式参数,简称形参
形参的实例化:在函数调用时形参会生成临时变量,在栈上开辟空间,形成该函数所对应的栈帧,函数内的定义的变量在该函数的栈帧内开辟空间,在函数调用结束时,栈帧就会释放。
形参是实参的一份临时拷贝(实参和形参是不同的内存空间,对形参的修改不会实参)
5.return语句
return后可以是一个数值,也可以是一个表达式,如果是表达式,先执行再返回值
return后面可以什么都没有,适合返回类型是void的函数
return返回的值和函数的返回类型不一样,系统会自动把返回值隐式转换为返回类型
如果函数中存在if等分支语句,要保证每种情况下都有return返回,否则会出现编译错误
6.数组做函数参数
函数的形式参数要和函数的实参个数匹配;
函数的实参是数组,形参也是可以写成数组形式;
形参如果是一维数组,数组大小可以省略不写;
形参如果是二维数组,可以省略行,不可以省略列
数组传参,形参数不会创建新的数组的(形参操作的数组和实参的数组是同一个数组)
7.嵌套调用和链式访问
7.1嵌套调用
嵌套调用就是函数之间的互相调用。(搭积木,拼乐高)小函数拼成大函数
但是函数是不能嵌套定义的
7.2链式访问
链式访问就是将另一个函数和返回值作为另一个函数的参数,像一个链条一样