【例23.3】编写一个具有两个参数的函数max,比较这两个参数的大小,并把大者和一个常量100相加,作为函数的返回值。将这个返回值和常量100相乘作为程序的输出。
#include <stdio.h> //1 包含头文件 #define NUM 100 //2 宏定义NUM=100 int max (int ,int ); //3 函数max 的原型声明 int main ( ) //4 主函数 { //5 主函数定义开始 int a ,b ,x ; //6 声明变量 a=2 ; b=3 ; //7 变量赋值 x=NUM*max ( a ,b ); //8 输出函数返回值与NUM 相乘 printf ("%d\n" ,x ); //9 输出函数返回值与NUM 的乘积 return 0 ; //10 } //11 //12 int max (int m1 , int m2 ) //13 函数max 的定义 { //14 if (m1 > m2 ) return m1+NUM ; //15 使用NUM else return m2+NUM ; //16 使用NUM } //17
假设将这个程序放在单个源文件c23_3.c中。语句1~语句2属于预处理的内容,语句3是主函数之外的所有函数的原型声明。这种单文件结构可以分为如下3部分。
第一部分:预处理命令
函数原型声明(如果有外部变量,也在这一部分声明或定义)
第2部分:主函数
第3部分:其他函数的定义
推广到更一般的情况:如果有外部变量,也在第1部分声明或定义。为了节省篇幅,很多例子都是使用这种模式。