第14章编译预处理.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第14章编译预处理

第十四章 编译预处理 第一节 宏替换 第一节 宏替换 1.1 不带参数的宏定义 1.1 不带参数的宏定义 宏定义实例 宏定义注意事项1 宏定义注意事项2 宏定义注意事项3 1.2 带参数的宏定义 带参数的宏定义实例 实例 1.3 终止宏定义 第二节 文件包含 * 第二节 文件包含 1.2 带参数的宏定义 1.3 终止宏定义 总目录 例:#define PI 3.1415926 格式:#define 宏名 替换文本 宏替换:预编译时,将源程序中出现的宏名用替换文本替换。 #define PI 3.1415926 main() { float c,s,r=10; c= 2.0*PI*r; ? s = PI*r*r; printf(“%f,%f”,c,s); } c= 2.0*3.1415926*r ?s = 3.1415926 *r*r #define 宏名 替换文本 1、宏定义的定义位置一般放在程序的开头。 #define PI 3.1415926 2、 宏名一般用大写字母表示。 3、宏定义不是C语句,后面不能有分号;若加入分号,则连分号一起替换。 4、续行符“\” #define A i%7= =0\ i%11= =0 i %77= =0 5、宏替换是在编译时由预处理程序完成,因此宏替换不占用运行时间。 例:#define PI 3.14 #define API (PI+1) #define TWO_API (2+API) 求 x=TWO_API/2 x=TWO_API/2 (2+API)/2 (2+(PI+1))/2 (2+(3.14+1))/2 去括号 ? x=TWO_API/2 2+API /2 2+(PI+1)/2 2+(3.14+1)/2 宏替换时,不能随意增减括号。 去括号 ? 考试重点 分目录 例:#define S(a,b) a*b #define 宏名(形参表) 替换文本 宏 #define S(a,b) a*b main( ) { float area = S(3,2); ?? printf(%f\n,area); } area = S(3,2) area = a*b area = 3*2 输出:6.000000 1):#define MU(x,y) ((x)*(y)) a=MU(5,2);b=6/MU(a+3,a); a=MU(5,2) b=6/MU(a+3,a) 2):#define MU(x,y) x*y b=6/MU(a+3,a) a=((5)*(2)) a=10 b=6/((a+3)*(a)) b=0 b=6/a+3*a b=30 宏替换时,不能随意增减括号。 其它注意事项参见不带参数的宏替换。 分目录 #define PI 3.1415926 main() { float s, c, r=10; ? scanf(%f,r); ?? s = PI*r*r; #undef PI ? c=2*PI*r; ……………………… } 作用域:定义位置到文件末尾 。 宏定义的定义位置一般放在程序的开头。 分目录 undef:终止宏定义。 #include 文件名或#include 文件名 双引号:系统先到当前目录下查找被包含文件,若没找到,再到系统指定的“包含文件目录”去查找。 尖括号:直接到系统指定的“包含文件目录”去查找。 一般地说,使用双引号比较保险。 总目录 *

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档