1、函数参数顺序点
函数调用过程中,变量值发生变化的位置(点),称为函数参数“顺序点”。
2、可变参数列表
C99版本加入可变参数列表概念。用于实现函数参数的变长传递。
#include<stdarg.h>中定义了相关方法。
typedefstruct{
char *ao;
intoffset;
}va_list;
控制函数:
void va_start(va_listap,last);
type va_arg(va_listap,type);
void va_end(va_listap);
void va_copy(va_listdest,va_list src);
3、递归
递归调用过程可以分为如下的两个阶段:
第一阶段称为“递推”阶段:
将原有的问题分解为新的子问题,逐渐以未知的向已知的方向推测,最终达到已知的条件,即递归结束条件,这时递归阶段结束;
第二阶段称为“回归”阶段:
该阶段从已知的条件出发,按照“递推”的逆过程,逐一求值返回,最后到达递推的开始处,结束回归阶段,完成递归调用。