- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高质量C编程
第一章 程序的排版 第二章 变量的命名规则 建议:标识符应当直观且可以拼读,可望文知意,不必进行“解码”。标识符最好 采用英文单词或其组合,便于记忆和阅读。切忌使用汉语拼音来命名。程序中 的英文单词一般不会太复杂,用词应当准确。例如不要把CurrentValue 写成 NowValue。 建议:识符的长度应当符合“min-length max-information”原则。几十年前 老ANSI C 规定名字不准超过6 个字符,现今的C++/C 不再有此限制。一般来 说,长名字能更好地表达含义,所以函数名、变量名、类名长达十几个字符不 足为怪。那么名字是否越长越好? 例如变量名maxval 就比maxValueUntilOverflow 好用。单字符的名字也是有用的,常见的如i,j,k,m,n,x,y,z 等,它们通常可用作 函数内的局部变量。 建议:命名规则尽量与所采用的操作系统或开发工具的风格保持一致。例如 Windows 应用程序的标识符通常采用“大小写”混排的方式,如AddChild。 而Unix 应用程序的标识符通常采用“小写加下划线”的方式,如add_child。别 把这两类风格混在一起用。 第四章 基本语句与表达式 第五章 指针的使用 第六章 函数的设计 建议:将正常情况放在if后面而不是else后面,并且记住:先集中编写正常情况,再编写异常情况。 bool CopyFile(const char * strResFileName, const char * strDesFileName) { FILE *readFile , *writeFile; if ( !readFile = fopen (strResFileName , “r”)) { if (!writeFile = fopen (strDesFileName , “w”)) { //开始用户操作 return true; } else { printf (“目标文件打开失败!”); return false; } } else { printf (“源文件打开失败!”); return false; } } 4.4 循环语句的效率 本节重点论述循环体的效率。提高循环体效率的基本办法是降低循环体的复杂性。 建议:在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的 循环放在最外层,以减少CPU 跨切循环层的次数。例如下图所示: (a) 低效率:长循环在最外层 (b) 高效率:长循环在最内层 建议:循环体内工作量最小化。说明:应仔细考虑循环体内的语句是否可以放在循环体之外,使循环体内工作量最小,从而提高程序的时间效率。 示例(c)的程序比示例(d)多执行了N-1 次逻辑判断。并且由于前者老要进行逻辑判断,打断了循环“流水线”作业,使得编译器不能对循环进行优化处理,降低了效率。如果N 非常大,最好采用示例(d)的写法,可以提高效率。如果N 非常小,两者效率差别并不明显,采用示例(c)的写法比较好,因为程序更加简洁。 (c) 效率低但程序简洁 (d) 效率高但程序不简洁 示例:如下代码效率不高。for (ind = 0; ind MAX_ADD_NUMBER; ind++){sum += ind;back_sum = sum; /* backup sum */} 语句“back_sum = sum;”完全可以放在for语句之后,如下。for (ind = 0; ind MAX_ADD_NUMBER; ind++){sum += ind;}back_sum = sum; /* backup sum */ 建议:不可在for 循环体内修改循环变量,防止for 循环失去控制。 建议:建议for 语句的循环控制变量的取值采用“半开半闭区间”写法。 示例 (a)中的x 值属于半开半闭区间“0 = x N”,起点到终点的间隔为N, 循环次数为N。 示例 (b)中的x 值属于闭区间“0 = x = N-1”,起点到终点的间隔为N-1,循 环次数为N。 相比之下,示例 (a)的写法更加直观,尽管两者的功能是相同的。 (a) 循环变量属于半开半闭区间 (b)
您可能关注的文档
最近下载
- 2025年海水网箱养殖市场调研报告.docx
- (部编版)道德与法治(道法)五年级上册复习.pdf VIP
- 2025年全球AI工具市场发展现状与趋势分析-35页.pdf VIP
- 潜孔钻机使用及保养.pdf VIP
- 婴幼儿营养与喂养 0-1岁婴儿的营养需要与合理 辅食添加.pptx VIP
- 2025冲刺密押卷解析(二).pdf VIP
- 新版四年级上册道德与法治教学计划进度表.docx
- 孕期保健工作制度(最新版).doc VIP
- 2025广西公需科目考试答案(3套涵盖95-试题)一区两地一园一通道建设人工智能时代的机遇与挑战.pdf VIP
- 变应性支气管肺曲霉病(ABPA)诊治专家共识(2022 年)解读 2.pptx VIP
文档评论(0)