函数(Functions)

走进一家专业厨房,你会看到切菜台、灶台、烘焙区各自独立。如果让一个厨师包办所有工序,效率会大打折扣。分工,是效率的来源。

C 语言的函数就是代码里的分工。把一段逻辑打包成一个函数,等于在程序里开了一个专门的工作台。main() 不必包办一切——它只需要调度:调用 calculate() 算结果,调用 print_result() 打输出。每个函数只做一件事,但把这件事做好。

函数,就是把复杂问题切分成小块的艺术。

第一个例子

#include <stdio.h>

int add(int a, int b) {
    return a + b;
}

int main(void) {
    int result = add(3, 5);
    printf("3 + 5 = %d\n", result);
    return 0;
}

一个函数由返回类型、函数名、参数列表和函数体组成。main 调用 add 时,程序会跳转到 add 的代码执行,然后把结果带回来。

你会学到什么

本章是函数的总览。深入的内容请到对应的子章节学习:

  • 函数基础 —— 声明与定义、参数传递、返回值、void 函数、前向声明
  • 函数作用域 —— 局部/全局变量、static 关键字、extern、链接属性
  • 递归函数 —— 基线条件、阶乘、斐波那契、调用栈可视化
  • 可变参数函数 —— va_listprintf 原理、哨兵模式

继续学习

函数是 C 语言模块化的基础。学完函数基础后,下一节将从声明与定义开始,深入函数的各个细节。

💡 提示:试试把之前写的代码改写成函数形式!把 main() 拆成 3–5 个函数,你会发现代码立刻变清爽了。


上一章:循环 | 下一章:函数基础