[关闭]
@SuHongjun 2020-04-27T05:47:25.000000Z 字数 583 阅读 185

C语言-Day 17-1 函数

C语言 2020春季学期


编程新套路1

要求函数先定义,后调用:

  1. #include "stdio.h"
  2. //用户自定义函数
  3. main()
  4. {
  5. //定义变量
  6. //提示及输入
  7. //计算及输出,调用
  8. }
  1. #include "stdio.h"
  2. main()
  3. {
  4. f(); //出错,因为调用在定义之前
  5. }
  6. void f()
  7. {
  8. printf("Hello world!\n");
  9. }

新套路1的问题:
当用户自定义函数的数量比较多(几十个),互相之间的调用关系比较复杂的时候,要满足定义在调用之前就会很复杂甚至是无法满足,怎么办???

函数原型声明

  1. #include "stdio.h"
  2. void f(); //函数原型声明,简记为:函数头;
  3. main()
  4. {
  5. f();
  6. }
  7. void f()
  8. {
  9. printf("Hello world!\n");
  10. }

编程新套路2

把函数原型声明放到前面(在编译预处理之后,main()之前),函数定义放在main()之后

  1. #include "stdio.h"
  2. //函数原型声明
  3. main()
  4. {
  5. //定义变量
  6. //提示及输入
  7. //计算及输出,调用, 函数调用
  8. }
  9. //用户自定义函数

新套路2的优点:
1. 避免在具有复杂调用关系的时候,难以满足先定义、后调用的要求;
2. main()在程序的开头部分,有利于理清程序的执行脉络

新套路2是编写复杂程序使用的主要编程套路

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注