一:面向过程的程序设计
面向过程是一种以过程为中心的编程思想
将复杂的问题分解为一个个容易实现的小问题
分解过后的问题可以按照步骤一步步的实现
解决问题的每一个步骤可以用函数来实现
二:可变参数
三:函数和宏的区别
宏是由预处理直接替换的,编译器不知道宏的存在
函数是由编译器直接编译的实体,调用行为邮编译器决定
多次使用宏会导致代码量的增加
函数是跳转执行的代码量不会增加
宏的效率要比函数高,因为是直接展开的,无调用开销
函数调用时会创建活动记录,效率不如宏
四:函数递归
五:函数设计技巧
不要在函数中使用全局变量,尽量让那个函数从意义上是一个独立的功能模块
参数名要能够体现参数的意义
函数参数为指针,且仅作输入参数用,则应在类型前加CONST
函数入口堆参数的有效性进行检查
函数不可返回指向栈内存的指针,因为该内存在函数体结束时就自动销毁