c++学习资料第 03 章 函数
- 格式:pdf
- 大小:459.37 KB
- 文档页数:32
C语言的程序模块称为函数,通常一个函数完成一个功能模块。
函数分为标准函数和用户自定义函数。
标准函数就是库函数,由C编译系统提供,用户可以直接调用它们,它们是C语言最基本的函数。
一.函数的声明、定义和调用格式:[存储类型] [数据类型] 函数名([形式参数表])说明:存储类型有四类:auto,extern,static,register。
函数默认是extern的,即别的文件中用extern声明后可以使用,static只能在本文件中使用,这些函数永远不会被外部函数调用,有点OOP的思想在里面,register类型是驻留在寄存器中的,编译器一般把频繁使用的如循环控制变量这样处理,提高执行效率,不符合寄存器长度的会采用auto处理,auto 变量放在堆栈中,局部、暂时意义。
函数的数据类型规定为函数返回值的数据类型。
一般情况下,返回值的数据类型与函数类型一致,如果不一致,以函数类型为准。
当有返回值时,return 表达式;没有返回值时,不使用return语句,当然也可以用;不提供返回值时,可以定义函数类型为void。
与变量的定义一样,函数的声明放在不同的位置决定了它的可见性和作用域。
有了函数的声明,函数的定义就可以放在函数声明后的任何地方。
声明只要简单地照写已定义的函数首部,在加一个分号。
对于函数的类型是整型、字符型和无返回值的函数可以直接使用而无需声明,但为了清晰和安全,别这样做。
函数没有参数,调用该函数时实际参数表为空,但圆括号()不能省略,它是函数的标志。
函数有三种调用方式:函数语句[putchar(…a‟);],函数表达式[y=sina(1.0)/3],函数参数[printf(“%d”, fact(8));]。
在不返回结果的函数定义中,void不能省略。
否则,函数类型被默认定义为int型。
二.变量和函数的作用域我们把定义在函数内部的变量为局部变量,把定义在函数外耳不属于任意一函数的变量称为局部变量。