C语言学习-第七章 利用函数实现模块化程序设计①

434 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第17天,点击查看活动详情

为什么要用函数

函数(function):从本质上来说,函数就是用来完成一定的功能的。函数就是功能,每一个函数用来实现一个特定的功能。

函数声明的作用※:

  • 是把有关函数的信息(函数名、函数类型、函数参数的个数和类型)通知编译系统,以便在编译系统对程序进行编译时,在进行到main函数调用print_star()和print_message()时知道它们是函数而不是变量或其他对象。
  • 对调用函数的正确性进行检查(如类型、函数名、参数个数、参数类型等是否正确)

从用户的角度看,函数有两种※:

  • 库函数:它是由系统提供的
  • 用户自定义的函数

函数的形式看,函数分两类※:

  • 无参函数
  • 有参函数

怎样定义函数

为什么要定义函数

函数:先定义,后使用

定义函数包括:

  • 指定函数的名字,以便以后按名调用
  • 指定函数的类型,即函数返回值的类型
  • 指定函数的参数的名字和类型,以便在调用函数时向它们传递数据。无参函数不需要这项
  • 指定函数应当完成什么操作,也就是函数是做什么的,即函数的功能。

定义函数的方法

1.定义无参函数:

一般形式:

类型名 函数名() {
    函数体
}
或
类型名 函数名(void) {
    函数体
}

函数体包括声明部分语句部分

定义函数时要用“类型标识符”(即类型名)指定函数值的类型,即指定函数带回来的值的类型。

2.定义有参函数

一般形式:

类型名 函数名(形式参数表列)
{
    函数体 // 函数体包括声明部分和语句部分
}
    int max(int x, int y)  // int maxint表示函数值是整型的   max为函数名 x、y: 形式参数
{
    int z; // 声明部分
    z = x > y ? x : y; // 执行语句部分
    return z;
}

3.定义空函数

形式为:

类型名 函数名() 
{}

  • 为什么要用函数
  • 怎样定义函数
  • 调用函数
  • 对被调用函数的声明和函数原型
  • 函数的嵌套调用
  • 函数的递归调用
  • 数组作为函数参数
  • 局部变量和全局变量
  • 变量的存储方式和生存期
  • 关于变量的声明和定义
  • 内部函数和外部函数