第1页
时间
10月16日星期2
课题
编译预处理
教学目标掌握宏定义的使用,文件包含的使用教学重点带参宏定义的定义和展开教学难点宏展开课型讲授课教学媒体
多媒体
教法选择讲授,举例,讨论教学过程教法运用及板书要点
第五章函数与编译预处理概述作用:对源程序编译之前做一些处理生成扩展C源程序种类:宏定义defi
e文件包含i
clude条件编译ifelsee
dif等格式:“”开头占单独书写行语句尾不加分号541宏定义不带参数宏定义一般形式:defi
e宏名宏体功能用指定标识符宏名代替字符序列宏体定义位置任意一般在函数外面作用域从定义命令到文件结束u
def可终止宏名作用域格式:u
def宏名宏展开:预编译时用宏体替换宏名不作语法检查引号中的内容与宏名相同也不置换宏定义可嵌套,不能递归宏定义中使用必要的括号()带参数宏定义一般形式:defi
e宏名参数表宏体例defi
eSabab………areaS32宏展开:area32宏展开:形参用实参换,其它字符保留宏体及各形参外一般应加括号()
重点介绍带参宏定义,以实例让学生加深记忆
f第2页
例
defi
ePOWERxxxx4y6zPOWERxy宏展开:zxyxy一般写成:defi
ePOWERx宏展开:zxyxy
xx
用宏定义和函数实现同样的功能defi
eMAXxyxyxy……mai
i
tabcdt……tMAXabcd……宏展开:tabcdabcd542文件包含功能:一个源文件可将另一个源文件的内容全部包含进来一般形式:i
clude“文件名”或i
clude文件名处理过程:预编译时用被包含文件的内容取代该预处理命令,再对“包含”后的文件作一个源文件编译
i
cludeBAfile2file1cfile1Afile2
被包含文件内容源文件c头文件h文件包含可嵌套
例文件包含举例powershdefi
esqrxdefi
ecubexdefi
equadx
xxxxxxxxx
f第3页
i
cludestdiohi
clude