- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《C语言》第十课.ppt.ppt
第九课 预处理命令;二、宏定义;例1 已知圆的半径,求圆的周长和面积。
#define PI 3.1415926
void main ()
{
float r,c,s;
scanf(“%f”,r);
c=2*PI*r;
s=PI*r*r;
printf(“c = %f\ns = %f\n” ,c,s) ;
}
;说明:; 4) 在进行宏定义时,可以引用已定义的宏名,进行层层置换。
例2: #define R 3.0
#define PI 3.1415926
#define L 2*PI*R
void main ()
{
printf(“L=%f\n” , L) ;
}
输出为:L=18.849556
注意:对程序中用双引号括起来的字符串内的字符,即使与宏名相同,也不进行替换。;2、带参数的宏定义
一般形式: #define 宏名 (参数表) 字符串;说明:
1) 定义带参数的宏时,宏名和后面的括号之间不能有空格,否则连空格一起作为字符串的一部分。
2) 带参数的宏定义与函数不同:
(1) 带参数的宏不考虑参数的类型,如果实参是表达式,也不求表达式的值,只是简单的字符串替换。宏展开是在预处理时进行的,在展开时,不分配存储单元,也不进行值的传递。
(2) 函数调用是在程序运行时执行的,需要考虑参数的类型,如果实参是表达式,需先求表达式的值,再进行参数传递。;思考题1:执行下面程序后,a的值为多少?
#define SP(x) x*x
void main()
{ int a,k=2;
a=SP(k);
printf(%d\n,a);
};思考题2:执行下面程序后,area的值为多少?
#define PI 3.1415926
#define S(r) PI*r*r
void main()
{ float a,b,area;
a=2.6;b=2.4;
area=S(a+b);
printf(%f\n,area);
};三、文件包含处理;例如: #include “stdio.h”
#include stdio.h
#include “d:\lib\max.c”
说明:
1. 如果被包含的文件指出了路径,编译时系统将只在所指定的文件夹中查找被包含文件。
2. 如果被包含文件没给出路径,分两种情况:
(1) 用双引号时,系统先查找当前目录,如找不到,则在环境工具所指定的标准目录中去查找。
(2) 用尖括号时,只在环境工具所指定的标准目录中去查找。
您可能关注的文档
最近下载
- 农村自建房清单成本.pdf VIP
- 【第14届全运会女足守门员防守技术运用探析5000字】.docx VIP
- 护理“三基”培训、考核计划与实施方案.docx VIP
- 足球守门员防守技术分析--以22届卡塔尔世界杯淘汰赛为例.pdf
- 2022中考文学常识知识点:外国作家.docx
- 2024年01月深圳市光明区水务局2024年第一批公开选聘3名一般特聘岗位人员笔试笔试历年典型考题及考点研判与答案解析.docx
- 破损山体生态修复治理措施.pptx VIP
- 2024北京应急管理局事业单位考试真题及答案.docx
- 湖北烟草专卖局(公司)系统2012年公开招聘二次面试人.doc
- TCRHA 028-2023 成人住院患者静脉血栓栓塞症风险评估技术.pdf
文档评论(0)