- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第十三章大程序构建目录/Contents实例讲解0201多文件构成的优点以及注意事项多文件构成的优点以及注意事项01C程序构成常见的C程序由多个文件组成(包括源文件和头文件)。源文件(后缀为.c或者.cpp):函数的定义和外部变量头文件(后缀为.h):可以在源文件直接共享的信息多文件编写的优点把相关的函数和变量分组放在同一个文件中可以使程序的结构清晰可以分别对每一个源文件进行编译,单独修改,单独编译;把函数归类分组放在不同的源文件中更利于复用多文件编写引发的问题某个文件中的函数如何调用定义在其他文件中的函数呢?函数如何访问其他文件的外部变量?两个文件如何共享一个宏定义或类型定义?解决方法:使用文件包含指令(#include指令)#include指令的使用#include文件名引用C语言自身库的头文件搜寻:系统头文件所在的目录#include“文件名”引用所有的头文件,包含自己编写的头文件搜寻:先搜寻当前目录,然后搜寻系统头文件所在的目录==如果使用的是C语言自身库的头文件,最好使用也可指定目录:#include“c:\**\*.h”必须注意:当同一个头文件被同一个工程下不同文件重复包含时该如何处理?若程序中有2个文件#includeboolean.h==相应的内容(如下图中的三个符号常量)重复定义,进而无法通过编译解决办法:使用条件编译指令,用#ifndef-#endif来封闭文件的内容#ifndefBOOLEAN_H#defineBOOLEAN_H#defineTRUE1#defineFALSE0typedefintBool;#endif这里的BOOLEAN_H可以用任意合法标识符替换,但习惯上与头文件的名称相对应,一来便于阅读,二来不会出现重复使用同样的标识符实例讲解02完整案例分析---格式化文本程序源文件头文件word.cline.cjustify.c读单词的相关函数的具体实现行缓冲相关的函数的具体实现主调函数word.hline.hword.c中的函数的原型声明line.c中的函数的原型声明word.h#ifndefWORD_H#defineWORD_H?/***********************************************************read_word:Readsthenextwordfromtheinputand**storesitinword.Makeswordemptyifno**wordcouldbereadbecauseofend-of-file.**Truncatesthewordifitslengthexceeds**len.***********************************************************/voidread_word(char*word,intlen);?#endifline.h#ifndefLINE_H#defineLINE_H?/*clear_line:Clearsthecurrentline.*/voidclear_line(void);?/*add_word:Addswordtotheendofthecurrentline.Ifthisisnotthefirstwordontheline,putsonespacebeforeword.*/voidadd_word(constchar*word);/*space_remaining:Returnsthenumberofcharactersleftinthecurrentline.*/intspace_remaining(void);?/*write_line:Writesthecurrentlinewithjustification.*/voidwrite_line(void);?/*flush_line:Writesthecurrentlinewithoutjustification.Ifthelineisempty,
您可能关注的文档
- C语言程序设计——基于计算思维的培养 课件 第1章 C语言基本概念.ppt
- C语言程序设计——基于计算思维的培养 课件 第2章 数据类型与表达式.ppt
- C语言程序设计——基于计算思维的培养 课件 第3章 格式化输入与输出.ppt
- C语言程序设计——基于计算思维的培养 课件 第4章 选择结构.ppt
- C语言程序设计——基于计算思维的培养 课件 第6章 函数.ppt
- C语言程序设计——基于计算思维的培养 课件 第8章 指针.ppt
- C语言程序设计——基于计算思维的培养 课件 第9章 字符串.ppt
- C语言程序设计——基于计算思维的培养 课件 第10章 指针与数组.ppt
- C语言程序设计——基于计算思维的培养 课件 第11章 自定义数据类型.ppt
- C语言程序设计——基于计算思维的培养 课件 第12章 文件.ppt
- 工程制图与计算机绘图(第2版) 课件 第6章 轴测图.ppt
- HTML5+CSS3 Web前端设计基础教程 第3版(第8章)PC端典型页面的设计与实现.pptx
- 中国税制(第十三版) 课件 第二章 增值税.pptx
- 中国税制(马海涛 第十三版) 课件全套 第1--9章 导论--- 与行为有关的税种.pptx
- C语言程序设计——基于计算思维的培养 课件 第13章 构建大规模程序.ppt
- 职业生涯规划书范本(2份).docx
- 《电路分析基础》课件 5 正弦稳态电路的分析、6 耦合电感电路与理想变压器、7 三相电路.pptx
- 《电路分析基础》教学大纲.docx
- 中国税制(第十三版) 课件 第五章 企业所得税.pptx
- 《学前心理学》课件 第四章 学前儿童的感觉和知觉.pptx
文档评论(0)