Skip to content

C 函数

函数是 C 程序的基本构建单元。本章讲解函数声明、定义、参数、返回值、内联与递归等。

1. 声明与定义

c
// 声明(原型)
int add(int a, int b);

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

2. 参数传递方式

  • 值传递:C 仅支持值传递
  • 间接修改:通过指针参数修改调用者的变量
c
void swap(int *x, int *y) { int t = *x; *x = *y; *y = t; }

3. 返回值

  • 返回基本类型或指针
  • 不要返回指向局部变量的指针

4. 内联函数(C99)

c
inline int sqr(int x) { return x * x; }

提示编译器内联,实际是否内联由编译器决定。

5. 递归函数

c
int fact(int n) { return n <= 1 ? 1 : n * fact(n-1); }

注意递归深度与栈空间。

6. 函数指针(预告)

函数也有地址,可存入指针变量,详见后续章节。

7. 头文件与接口

  • 在头文件中放置函数原型
  • 在源文件中实现

8. 示例

c
#include <stdio.h>

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

int main(void) {
    printf("%d\n", add(2, 3));
    return 0;
}

9. 小结

理解函数的声明/定义与参数传递模型,是模块化与可复用代码的前提。

本站内容仅供学习和研究使用。