C语言函数知识点总结.doc
文本预览下载声明
函数
本章重点:
函数的定义和调用; 函数间的数据传递方式; 嵌套调用和递归调用; 变量的作用域和存储类别; 模块化程序设计方法。
本章难点:
形参与实参的意义、作用与区别;
参数的两种传递方式;
对递归函数调用过程的理解;
全局变量和局部变量的作用。
//函数相关内容:
*语法:包括定义,声明,调用,
*语义
语句包括:表达式语句,空语句,控制语句,复合语句,函数调
用语句
函数:*函数首部:包括返回值类型,函数名,形参
*函数体
*函数调用的过程:*开辟空间(形参,函数的局部变量)
*把实参送给形参
*执行函数
*释放空间
1•函数其实就是一段可以重复调用的、 功能相对独立完整的程序
段。
2. 主函数可以调用其他函数,其他函数也可以互相调用。
3. —个C程序必须有一个且只能有一个 main函数,无论 main
函数位于程序
的什么位置,运行时都是从 main函数开始执行的。
4•函数不能嵌套定义,也就是说一个函数不能从属于另一个函数。
函数之
间可以互相调用,但是任何函数不能调用 mai n函数,ma in函数 是被操作系
统调用的。
5•函数的分类:
(1 )从用户角度看:库函数、用户自定义的函数
(2)从形式:无参函数、有参函数
6•函数定义即函数的实现, 是对所要完成功能的操作进行描述的 过程,包
括函数命名和返回值类型声明、形式参数的类型说明、变量说
明和一系
列操作语句等。
函数和变量一样,必须“先定义,后使用”
7•函数定义应包括以下内容:
函数的名字、返回值的类型。函数参数的类型和名字,无参函 数不需要
指定。指定函数的功能
8. 在函数体中,声明部分是对函数内部所用到的变量的类型说明,
并对要
调用的函数进行声明。
9. 定义有参函数的一般形式为:
类型标识符 函数名(形式参数表列)
{
声明部分;
语句;
}
10. 在C语言中,可以用以下几种方式调用函数
(1) 函数表达式
函数作为表达式中的一项出现在表达式中,以函数返回值参
与表达式
的运算。这时要求函数是有返回值的
例如:y=sin(x);
(2) 函数语句
函数调用的一般形式加上分号即构成函数语句。
例如:printf(%d,a);
这种方式通常只要求函数完成一定的操作,不要求函数带回 值。
(3) 函数实参
这种方式是函数作为另一个函数调用的实际参数出现,也就 是把该函
数的返回值作为实参进行数据传送,所以要求该函数必须是有 返回值
的。
例如:printf(%d,max(a,b));
12. 只有在发生函数调用时,才给形参分配单元,并且赋值,一 旦函数调
用结束后,形参所占的内存单兀又被释放掉。
13. 在调用函数过程中发生的实参与形参间的数据传递是“值传
递”,只
能由实参向形参传递数据,是单向传递,不能由形参传给实参。
14. 声明的作用是把函数的返回值类型、函数名、函数参数的个
数和类型
等信息通知编译系统,以便在遇到函数调用时,编译系统能识
别该函
数并检查调用是否合法
15. 函数的声明方法:
(1) 只说明函数的类型,这称为简单声明。 in t mi n();
(2) 不仅说明函数的类型还要说明参数的个数和类型,这称为原
型声明。
int min (i nt x,i nt y);
16. 数组名作函数参数时,形参数组和实参数组为同一数组,共同
拥有一段
内存空间。
17. 数组元素不能用作形参,因为形参是在函数调用时临时分配 内存存储
单元的,不能为一个数组元素单独分配存储单元。
18. 变量的有效范围(作用域)
19. 局部变量也称为内部变量,是在函数内或函数的复合语句内 定义说明
的。
20. 全局变量也称为外部变量,它是在函数外部定义的变量,位 置在所有
函数前、各个函数之间或所有函数后。
*其作用域是从定义变量的位置开始到本源文件结束。
*设置全局变量的作用是可以增加各个函数之间的数据传输渠道。
21. 变量的完整说明为:
存储类型数据类型变量名表列;
例如:
auto int x,y;
22. C语言变量的存储方式可以分为动态存储方式和静态存储方 式。
23. 动态存储方式:
(1) 自动变量(auto变量)
(2) 寄存器变量(register变量)
(3) 形式参数
24. 静态存储方式:
(1)静态局部变量(static局部变量) 其语法格式为:
static类型标识符变量名; 例如:static int f;
(2)全局变量(全局变量赋初值也是在编译时完成的,且仅执行 次赋初值
的操作。)
不能用extern来初始化外部变量。
(3)静态外部变量
25. 一般为了叙述方便,把建立存储空间的变量声明称定义,而
把不需要
建立存储空间的声明称为声明
26. 在函数中出现的对变量的声明(除了用extern声明的
显示全部