C-5.函数

原创 2015年11月20日 12:47:45

一. 函数的定义

1. 函数是具有特定功能的代码段

2. 从函数的定义上来看,函数可分为库函数(系统提供好的函数)和自定义函数(开发者自己写的函数)

3. 函数的定义

返回值类型  函数名(形式参数列表)

{

                  语句;

               return  返回值;

}

注: 

返回值: 函数的返回值称为函数的值,只能通过return语句返回给主调函数;一个函数只能有一个返回值;函数即使没有返回值也可以使用return来结束函数的执行,回到主调函数;return后面的语句不再执行

4. 函数的四种基本形式


5. 函数的调用


函数调用实例:



6. 形参与实参

形参: 出现在函数定义中,以假名字来表示函数定义时需要提供的值

实参: 出现在函数调用中得表达式


二. 函数的声明

1. 严格的函数通常包括三个部分:

函数声明  函数定义  函数调用

2. 函数声明: 指的就是函数的描述,也叫函数原型

函数定义出现在主调函数之前,可以省略函数声明

函数定义出现在主调函数之后,需要提前声明函数

函数声明尽管可以省略,从规范来讲不要省略

3. 函数声明与函数定义的位置




三. 数组作为参数

1. 数组作为参数,与普通变量一样;数组名传入,即数组的首地址

注意:此时,形参和实参实际上是同一段内存空间

2. 示例





四. 函数的嵌套调用

1. C语言中不允许函数嵌套定义,但是允许函数嵌套调用

注意避免嵌套定义

2. 示例





五. 函数的递归调用(此处不做详略讲解)

1. C语言允许函数实现体内再次调用函数本身,这种调用方式称为递归调用,这个函数称为递归函数 

2. 在计算机中阶乘就可以使用递归调用

3. 递归一定要有出口

六. 变量的作用域

即变量的有效范围

1. 全局变量: 定义在main函数上方的变量

2. 局部变量

注意: 外部变量和局部变量可以重名,但是局部变量作用域内只能访问局部变量















[JNI]开发之旅(5)访问c/c++函数

前面介绍了那么多,不在废话,直接实例开撸,不懂步骤的请看: [JNI]开发之旅(1)开发流程介绍调用C++函数1.调用c++函数printf,输出一个hello JNIjava层: 定义一个JNIU...

第一站NO.5--《C Primer Plus(第五版)中文版》第五章_5.6 带有参数的函数和5.7 一个示例程序

5.6 带有参数的函数 程序清单5.15 pound.c 【程序代码:/home/biyj/C_Primer_Plus/chp5/src/learn/pound.c】 程序运行结果:  ...

[C_5]内存补/对齐&函数

8内存对齐&补齐(了解) 变量的地址是变量本身所占字节数的倍数。分配空间到内存地址的边界上。对齐可以提高访问速度。 char 1 地址是1的倍数 int 4 地址是4的倍数 ...

这周周末要搞懂的一个S5PV210 android驱动入门函数s3c_keypad_probe

static int __init s3c_keypad_probe(struct platform_device *pdev) { struct resource *res, *keypad_m...

linux启动分析(5)---C程序入口函数start_kernel

================================Author: taoyuetao Email: tao_yuetao@yahoo.com.cn Blog: http://...

Linux C编程--进程介绍5--system函数

表头文件 #i nclude 定义函数 int system(const char * string); 这个函数是用fork,exec,waitpid这三个系统函数实现的,返回值相对...

编写函数itob,将整数n转换为以b为底的数(The c programming language 练习3-5)

这是一道将十进制整数转换为b进制(b为整数)的题目。 理论上可以转换任意b进制(1除外),但是由于输入限制(只使用getchar()),只能制定10以内的b,因此如果要尽可能地接近理想情况,需要编写一...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C-5.函数
举报原因:
原因补充:

(最多只允许输入30个字)