- 1、本文档共87页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言课牛件 第10章
第10章 预处理、输入/输出和文件操作 C语言的预处理功能由C编译的预处理程序实现,负责分析和处理行首以“#”号开头的控制行。这些控制行包括宏替换、文件包含和条件编译等。 C语言中并没有专门用于输入/输出的语句。为了给出方便的程序接口,C语言中提供了“标准I/O库”,它是一组函数,可提供一系列I/O服务。 10.1 预处理功能 10.2 文 件 包 含 10.3 条 件 编 译 10.4 其他预处理功能 10.5 库函数使用方式 10.6 常用标准输入/输出函数 10.7 文件及有关操作 10.8 其他一些常用的函数(宏) 10.1 预处理功能 10.1.1 简单宏定义和宏替换 简单宏定义的一般形式是: #define 标识符 字符序列 其中,标识符称作宏名,一般用大写字母。例如: #define PI 3.1415926 对于像PI这样的宏在进行使用和处理时分为3个步骤:① 在函数之外(往往在程序开头)使用#define控制行定义宏名;② 在程序中使用已定义的宏名;③ 在程序进行编译时,由预处理程序对宏名进行宏替换,恢复被宏名所代替的字符序列的原貌。例如: #define N 50 #define PI 3.1415926 … int a[N]; double r,l; … l = 2*PI*r; … 经过宏替换之后,上述代码实际上就变成: … int a[50]; double r,l; … l=2*3.1415926*r; … 有关宏的定义和使用要注意以下几点: ① 宏定义在源程序中要单独占用一行,通常“#”号出现在一行的第一个字符的位置,允许在#号的前面有若干空格或制表符,但不允许有其他字符。 ② 宏名用大、小写字母标识都行,为醒目起见,往往用大写字母表示。 ③ 用双引号括起来的标识符不做宏替换。例如: #define TRUE 1 则打印语句 printf(TRUE); 会打印出TRUE,而不是1。 ④ 宏定义可以嵌套。例如: #define PI 3.1415926 #define TWOPI ( 2*PI ) 在预处理后,语句 c1=TWOPI * r; 便替换成 c1=( 2 * 3.1415926 ) * r; ⑤ 宏替换只是按原来的定义“机械地”进行替换,不管替换后的结果是对还是错。例如: #define A 3+2 那么 5/A 被替换成 5/3+2 又如: #define PI 3.l4l5q /* 有错:4的前面是字母l,5的后面是字母q */ … area = PI * r * r; … 照样进行宏替换: … area = 3.l4l5q * r * r; … 为了避免出现上述第一种情况造成的误解,应当把字符序列用括号括起来。 #define A (3+2) ⑥ 如果宏定义中的字符序列过长,在一行中放不下,可在该行末尾加续行符“\”,后随一个换行符。 #define LONG_STRING this is a very long string that is used as \ ↙ an example ⑦ 可以用宏定义来表示数据类型。 #define MAX 100 #define ENTRY struct entrytype 在程序中可用ENTRY定义变量: ENTRY table[MAX],* p; ⑧ 如果宏名出现在#号之后,则不对它进行替换。例如: #define DEF define #DEF N 10 ⑨ 宏名的有效范围是从定义它的地方开始到其所在文件末尾或者用 #undef指令消除该宏定义为止。宏名不受分程序结构的影响,在其有效范围内遵循宏替换的规则。 10.1.2 带参数的宏定义 1.带参数宏定义的一般格式 带参数的宏定义的一般形式是: #define 宏名(参数表) 字符序列 例如,定义一个计算圆面积的宏:
您可能关注的文档
- c语言课件第2章c呢语言概述.ppt
- c语言课件第04章款简单程序.ppt
- c语言课件第4林章顺序程序设计.ppt
- c语言课件第4章顺找序结构程序设计.ppt
- c语言课件第5个章ppt.ppt
- c语言课件第6啊章循环.ppt
- c语言课件第7章村数组2.ppt
- c语言课件第08呵章函数.ppt
- c语言课件第13章c语时言初步.ppt
- c语言课件第吧1章概述.ppt
- 2024-2025学年辽宁省锦州市渤海大学附属高级中心高一下学期期中考试历史试题.doc
- 2025届四川省凉山彝族自治州高三下学期第三次诊断性考试历史试题.doc
- 2025届北京市东城区高三下学期综合练习(二)历史试题.doc
- 2025届山西省太原市高三下学期5月模拟考试(三)历史试题.doc
- 2025至2030中国能源行业市场发展现状及前景趋势与行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国药品行业发展分析及产业运行态势及投资规划深度研究报告.docx
- 2025至2030中国起停技术行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国移民服务行业市场发展现状及前景趋势与行业项目调研及市场前景预测评估报告.docx
- 2025届山东省济南市高三上学期1月期末考试政治试卷(含答案).pdf
- 2025届江苏徐州高三下学期模拟预测物理试题(含答案).pdf
最近下载
- 家长会课件:如何培养孩子学习英语的兴趣.pptx VIP
- 礼仪形象修养教程(高职)全套教学课件.pptx
- 小学体育与健康3年级 18.篮球 (篮球小赛季(一)) 大单元课时教案.docx VIP
- 家长会:如何培养孩子学习英语的兴趣幻灯片.ppt VIP
- 新版城市轨道交通设备知识考试题库备考资料(含答案).pdf VIP
- 水电站、泵站风险点排查表、重大危险源清单、一般危险源辨识、评价方法、风险分级管控清单.docx VIP
- 《孤独的小螃蟹》阅读理解及答案.docx VIP
- 牛羊常见传染病.docx VIP
- 2025年广东省深圳市辅警协警笔试笔试测试卷(含答案).docx VIP
- 五好党支部工作总结.pptx VIP
文档评论(0)