- 1、本文档共96页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言程序设计现代方法15-编写大型程序
重建程序 在程序开发中, 我们很少需要编译所有的文件. 为了节省时间, 再造过程应该只编译那些被最近的修改所影响的文件. 假设一个程序被设计为每个源文件带一个头文件. 在修改之后,要看有多少文件需要重新编译,我们需要考虑两种可能. Copyright ? 2008 W. W. Norton Company. All rights reserved. * 重建程序 如果变化影响了一个单独的源文件, 只有那个文件必须被重新编译. 假设我们决定精简word.c中的read_char 函数: int read_char(void) { int ch = getchar(); ? return (ch == \n || ch == \t) ? : ch; } 这个修改不影响 word.h, 因此我们只需重新编译 word.c并再连接程序. Copyright ? 2008 W. W. Norton Company. All rights reserved. * 重建程序 第二种可能是变化影响了头文件. 对于这种情形, 我们应该重新编译所有的包含该头文件的文件, 因为它们可能受到潜在的影响. Copyright ? 2008 W. W. Norton Company. All rights reserved. * 重建程序 假设我们修改 read_word,使得它返回所读单词的长度. 首先, 我们改变word.h 中的read_word的原型 : /********************************************************** * read_word: Reads the next word from the input and * * stores it in word. Makes word empty if no * * word could be read because of end-of-file. * * Truncates the word if its length exceeds * * len. Returns the number of characters * * stored. * **********************************************************/ int read_word(char *word, int len); Copyright ? 2008 W. W. Norton Company. All rights reserved. * 重建程序 然后, 我们修改read_word的定义: int read_word(char *word, int len) { int ch, pos = 0; ? while ((ch = read_char()) == ) ; while (ch != ch != EOF) { if (pos len) word[pos++] = ch; ch = read_char(); } word[pos] = \0; return pos; } Copyright ? 2008 W. W. Norton Company. All rights reserved. * 重建程序 最后, 我们修改justify.c ,删除对string.h 的包含,并修改主函数: int main(void) { char word[MAX_WORD_LEN+2]; int word_len; ? clear_line(); for (;;) { word_len = read_word(word, MAX_WORD_LEN+1); … } } Copyright ? 2008 W. W. Norton Company. All rights reserved. * 重建程序 一旦我们做了这些改变, 我们将重新建造 justify:重新编译word.c 和justify.c 后再连接. 再造程序的 GCC 命令: gcc -o justify justify.c word.c line.o Copyright ? 2008 W. W. Norton Company. All rights r
您可能关注的文档
- cxl八国联军侵华.ppt
- 吸尘器调研概要.ppt
- CTCS-3级列控系统概述_2009.12.11.ppt
- 吴祯充满魅力的书画和戏曲艺术_定稿概要.ppt
- 吸烟与肺癌概要.pptx
- 吸烟主题班会课件概要.ppt
- CSY-XS-01传感器实验箱用户使用手册.doc
- 吸烟人的肺概要.ppt
- c第2章_测量误差.ppt
- 吸收合并案例概要.ppt
- 2025至2030年中国单柄浅煲市场分析及竞争策略研究报告.docx
- 2025至2030年中国单组份环氧树脂胶粘剂市场分析及竞争策略研究报告.docx
- 2025至2030年中国挡风玻璃胶市场分析及竞争策略研究报告.docx
- 2025至2030年中国登山扣指南针市场现状分析及前景预测报告.docx
- 2025至2030年中国地产交易电话短信查询系统市场分析及竞争策略研究报告.docx
- 2025至2030年中国低起泡性精炼剂市场分析及竞争策略研究报告.docx
- 2025至2030年中国套装雨衣行业发展研究报告.docx
- 2025-2031年中国扑克牌行业发展前景预测及投资战略规划研究报告.docx
- 2025年中国进油细管数据监测报告.docx
- 2025年中国后搁板数据监测报告.docx
最近下载
- 混凝土单轴受压的应力-应变曲线(2010版规范).xls VIP
- 园林绿化养护服务投标方案.docx VIP
- 关于成立必威体育官网网址工作组织机构的通知(红头文件).doc VIP
- 拆除旧梯更换新梯施工方案.docx VIP
- 高一英语完形填空专项训练(含答案解析).doc VIP
- 涉外案事件工作总结8篇.docx VIP
- 高速公路土建工程、高速公路下穿宁西铁路立交工程实施性施工组织设计方案.docx VIP
- 通力电梯MX18_MX10 抱闸的安装与调整 .pdf VIP
- 部队工程必威体育官网网址方案及措施(3篇).docx VIP
- 雨课堂学堂在线《无人机导航与飞行控制(中国人民解放军海军航空)》学堂云单元测试考核答案.pdf
文档评论(0)