定义一次、到处调用——函数是把“一段逻辑”打包成可复用的工具。
add 每次都算同样的"加法",只是输入不同。| 部分 | 含义 | 例子 |
|---|---|---|
| 返回类型 | 函数返回什么类型;没有则 void | int / void |
| 函数名 + 参数 | 怎么调用、需要喂什么 | add(int a,int b) |
return 值; | 把结果交回给调用处 | return a+b; |
调用 add(3,4) | 执行并拿返回值 | 返回 7 |
int add(int,int),下面写成 int add(int a),编译器会报"函数冲突"。参数个数、类型、返回类型都要一模一样。int 却忘了 return,函数会返回"垃圾值",结果随机。要么保证每条路径都 return,要么改 void。函数像流水线上的一台机器:你只管把原料(参数)投进去,机器按固定工序加工,出来半成品(返回值)。
机器内部怎么转不用每次重新造——这就是"复用",也是工厂和数学公式(如勾股定理 sqrt)的共同点。
写大程序 = 先拆成几个函数(切菜/炒菜/装盘),每块能单独测试、单独改。这和写长篇文章先列章节、 盖楼先打地基再一层层砌是同一个思想:分而治之,每部分小而可控。
int f(int a,int b){ return a-b; },f(8,3) 返回?a-b = 8-3 = 5,return 把 5 交回给 f(8,3)。int max(int a,int b){ __________ },让它返回两数中较大者。
return a>b ? a : b;(用三目,或 if(a>b) return a; else return b;)。