- 2
- 0
- 约7.32千字
- 约 57页
- 2023-12-01 发布于陕西
- 举报
函数调用和宏调用 函数调用 宏调用 信息传递 实参的值或地址传送给形参。 用实参的字符串替换形参。 内存分配 程序运行时处理,分配临时内存单元。 宏展开在预编译时处理,不存在分配内存的问题。 参数类型 实参和形参类型一致。如不一致,编译器进行类型转换。 作字符串替换,不存在参数类型问题。 返回值 可以有一个返回值。 作字符串替换,不存在返回值问题。 对源程序 无影响。 宏展开后使程序加长。 时间占用 占用程序运行时间。 占用编译时间。 宏定义(cont’d) 宏定义也可用来定义多个语句,在宏调用时,把这些语句又代换到源程序内。 #define SV(s1,s2,s3,v) s1=l*w;s2=l*h;s3=w*h;v=w*l*h; main() {int l=3,w=4,h=5,sa,sb,sc,vv; SV(sa,sb,sc,vv); printf(sa=%d\nsb=%d\n sc=%d\nvv=%d\n,sa,sb,sc,vv); getch(); } 第十一讲 编译预处理 概述 宏定义 “文件包含”处理 条件编译 程序应用举例 小结 参考书目及网络资源 讨论时间 “文件包含”处理 所谓“文件包含”处理是指一个源文件可以将另外一个源文件的全部内容包含进来。C语言提供了#include命令用来实现“文件包含”的操作。 其一般形式为:
原创力文档

文档评论(0)