函数:完成特定功能的代码段
作用:把功能封装到函数中,方便代码管理,和以后使用
好处:提高代码复用性、提高代码的可读性
1、确定函数功能,根据函数功能为函数起一个有意义的名字
2、确定完成这个功能需要函数调用者传入什么的数据,确定形参列表
3、确定完成这个功能需要返回什么样类型的数据给函数调用者
4、写函数体,完成函数功能
定义函数的格式 形参列表
返回值类型函数名称(形参类型形参名称,...)--- 函数头
{
语句;
...
}
形式参数:定义函数的时候,函数名称后面小括号中的参数,简称形参
实际参数:调用函数的时候,函数名称后面小括号中的参数,简称实参
1、形参与实参必须一一对应
2、形参的类型必须与实参的类型一致
3、基本数据类型作为函数参数传递是值传递(仅仅实参的值传递给形参,改变形参的值不会影响实参的值)
4、形参名称不可重名
5、形参名称也不可与函数中直接定义的变量重名
函数返回值
1、return作用
1、返回数据给函数调用者
2、结束函数
注意点:1、什么样返回值类型就必须返回什么样类型的值
2、如果函数没有返回值,函数的返回值类型是void,那么他可以不写return语句,如果你需要提前结束函数,可以写return后面直接加;
3、函数只能有一个返回值
4、没有明确指定返回值类型,默认是int (但是开发过程中都必须写返回值类型)
所有的数据类型都可以作为函数参数类型
所有的数据类型都可以作为函数的返回值类型
终端: pwd, ls, ls -l,cd ,touch,open,mkdir,rm,rmdir,rm -r,clear,who
编译器指令:cc -c 编译 cc 链接(编译和链接)
预处理指令:在编译前进行解析处理指令
#include 将包含文件拷贝#include所在的位置
#include " "
1、现在当前的路径下查找
2、如果没找到就去编译器的include路径下查找
3、如果还没有找到就系统include路径下查找
#include <>
2、先去编译器的include路径下查找
3、如果还没有找到就系统include路径下查找
当包含本项目中文件的时候就是 #include " "
当包含系统文件的时候,就是用 #include < >
#import
函数声明:把函数头拷贝过来,加上一个分号
作用:告诉编译器我这个函数已经存在了
如果我们是用在后面定义的函数时候,如果没函数声明会报一个警告(有的错误)
如果函数只有声明没有定义的话,编译可以成功,但链接出错了
多文件开发
.h 函数声明
.m 函数定义
.h 与 .m 必须同名
如果我们想是用某个文件中函数,只需要包含它头文件
递归函数:自己调用自己的函数
1、找规律: fun(n) 与fun(n- 1) 或 fun(n + 1) 的关系
2、确定函数的结束条件