正在加载图片...
靳润昭C语言教程讲义 2001年2月17日 再作说明而直接调用。例如例8.1中,函数max的定义放在main函数之前,因此 可在main函数中省去对max函数的函数说明 int max(inta,intb) 3)如在所有函数定义之前,在函数外预先说明了各个函数的类型,则在以后的各主调 函数中,可不再对被调函数作说明。例如 char str(int a) float f(float b) maino char str(int a) float f(float b) 其中第一,二行对str函数和f函数预先作了说明。因此在以后各函数中无须对 str和f函数再作说明就可直接调用。 4)对库函数的调用不需要再作说明,但必须把该函数的头文件用 include命令包含在 源文件前部。 8.5函数的嵌套调用 C语言中不允许作嵌套的函数定义。因此各函数之间是平行的,不存在上一级函数和下 级函数的问题。但是C语言允许在一个函数的定义中出现对另一个函数的调用。这样就出 现了函数的嵌套调用。即在被调函数中又调用其它函数。这与其它语言的子程序嵌套的情形 是类似的。其关系可表示如图。 main函数a函数b函数 调用a函数调用b函数 结束 图表示了两层嵌套的情形。其执行过程是:执行main函数中调用a函数的语句时,即 转去执行a函数,在a函数中调用b函数时,又转去执行b函数,b函数执行完毕返回a 函数的断点继续执行,a函数执行完毕返回main函数的断点继续执行。 第8页靳润昭 C 语言教程讲义 2001 年 2 月 17 日 第8页 再作说明而直接调用。例如例 8.1 中,函数 max 的定义放在 main 函数之前,因此 可在 main 函数中省去对 max 函数的函数说明 int max(int a,int b)。 3) 如在所有函数定义之前,在函数外预先说明了各个函数的类型,则在以后的各主调 函数中,可不再对被调函数作说明。例如: char str(int a); float f(float b); main() { …… } char str(int a) { …… } float f(float b) { …… } 其中第一,二行对 str 函数和 f 函数预先作了说明。因此在以后各函数中无须对 str 和 f 函数再作说明就可直接调用。 4) 对库函数的调用不需要再作说明,但必须把该函数的头文件用 include 命令包含在 源文件前部。 8.5 函数的嵌套调用 C语言中不允许作嵌套的函数定义。因此各函数之间是平行的,不存在上一级函数和下 一级函数的问题。但是C语言允许在一个函数的定义中出现对另一个函数的调用。这样就出 现了函数的嵌套调用。即在被调函数中又调用其它函数。这与其它语言的子程序嵌套的情形 是类似的。其关系可表示如图。 图表示了两层嵌套的情形。其执行过程是:执行 main 函数中调用 a 函数的语句时,即 转去执行 a 函数,在 a 函数中调用 b 函数时,又转去执行 b 函数,b 函数执行完毕返回 a 函数的断点继续执行,a 函数执行完毕返回 main 函数的断点继续执行
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有