6.1 函数的定义和作用

引言:为什么需要函数

避免了重复性操作
有利于程序的模块化

一、什么是函数 & 函数的作用

  1. 逻辑上:能够完成特定功能的独立的代码块
  2. 物理上:
    1. 能够接收数据,
    2. 能够对接受的数据进行处理,
    3. 能够将数据处理的结果返回
      总结: 函数是一个工具,它是为了解决大量类似问题而设计的,函数可以当作一个黑匣子

模块化程序设计
从本质意义上来说,函数就是用来完成一定功能的
函数就是功能,每一个函数用来实现一个特定的功能,函数的名字应反映其代表的功能
一个C程序可由一个主函数和若干其他函数构成,由主函数调用其他函数,其他函数也可以相互调用,同一个函数可以被一个或多个函数调用任意多次。

C程序的构成

C语言的基本单位是函数

其他

  1. 一个源程序文件由一个或多个函数以及其他有关内容(指令、数据声明及定义)。
  2. 一个源程序文件就是一个编译单位,在程序编译时,是以源程序文件为单位编译的,而不是以函数为单位进行编译。
  3. C程序的运行从main函数开始,在main函数调用其他函数后返回main函数,最后也在main函数中结束程序的运行。
  4. 所有函数都是平行的,定义函数时是分别进行的,不能嵌套定义函数,函数之间可以相互调用,main函数不能被其他函数调用。

函数的分类

从用户使用的角度看

  1. 库函数
  2. 用户自己定义的函数

从函数的形式来看

  1. 无参函数
  2. 有参函数

从返回值来看

  1. 有返回值
  2. 无返回值函数

其他

  1. 普通函数
  2. 主函数

不严谨说法

  1. 值传递函数
  2. 地址传递函数

二、函数的定义

函数必须先定义后使用

  1. 函数定义的本质:详细描述函数函数之所以能够实现某个特定功能的具体方法。
  2. return 表达式的含义:return 终止被调函数,向主调函数返回return表达式的值,如果表达式为空,则只终止函数,不向主调函数返回任何值。
  3. break 用来终止循环和switch,return用来终止函数,还可以返回值。

函数类型 函数名(参数) { 函数体(包括声明变量+语句) }

  1. 函数类型
    函数返回值的类型也称为函数的类型,如果函数名前面的类型,与return表达式中的类型不一致,以函数名前的类型为准。
    函数也可以没有返回值 那么就写 void

  2. 参数部分:

    1. 无参数 (void)
    2. 有参数(参数类型 形式参数,参数类型 形式参数)
int max (int i, int j)
{
  函数体
}
// int 为函数类型
// max 为函数名
// i,j为形式参数,简称形参

本文章使用limfx的vsocde插件快速发布