通信软件的编程规范.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通信软件的编程规范

厦门青年网络通讯股份有限公司-研发部 通信软件的编程规范 1、通信软件的编程规范 为了提高源程序的质量和可维护性,对软件产品的源程序的编写风格做出同意的规范约 束是非常有必要的,尤其对于实时性、准确性要求极严的通信软件的开发,制定并实施严格 的编程规范是尤其重要的。 本章提出了一些常见的通信软件开发规范,主要是针对VxWorks/Tornado 编程的,但也 基本适用其它不同的编程语言或应用环境的编程。 这里给出的规范的内容包括排版、注释、标识符命名、变量适用、代码可测性、程序效 率、质量保证、代码编译、单元测试、程序版本与维护等。其中的“规则”是编程时强制必须 遵守的原则:“建议”是编程时必须加以考虑的原则:“说明”是对此规则或建议进行必要的解 释:“示例”对次规则或建议从正反两个方面给出离子。 1.1 排版 1) 规则1-1:程序块要采用缩进风格编写,缩进的空格数为4 格。 2) 规则1-2:相对独立的程序块之间、变量说明之后必须加空行。 示例:如下离子不符合规范。 if (!valid_ni(ni)) { …//program code } repssn_ind = ssn_date[index].repssn_index; repssn_ni = ssn_date[index].ni; 应如下书写: if (!valid_ni(ni)) { …//program code } repssn_ind = ssn_date[index].repssn_index; repssn_ni = ssn_date[index].ni; 3) 规则1-3:较长的语句(80 字符)要分成多行书写,常表达式要在低优先级操作符处 划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句 可读。 示例: perm_count_msg.head.len = NO7_TO_STAT_PERM_COUNT_LEN +STAT_SIZE_PER_FRAM*sizeof(_UL); act-task_table[frame_id*STAT_TASK_CHECK_NUMBER + index].occupied = atat_poi[index].occupied; Act_task_table[taskno].duration_true_or_false = SYS_get_sccp_statistic_state(stat_item); 第1 页共37 页 厦门青年网络通讯股份有限公司-研发部 Report_or_not_flag = ((taskno MAX_ACT_TASK_NUMBER) (n7stat_stat_item_valid(stat_item) (act_task_table[taskno].result_date != 0)); 4) 规则1-4:循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分,长表 达式要在低优先级操作符划分新行,操作符放在新行之首。 示例: If((tasknomax_act_task_number) (n7stat_stat_item_valid(stat_item))) { …//program code } for(i = 0,j = 0;(i BufferKeyword[word_index].word_length) (j NewKeyword.word_length); i++,j++) { …//program code } for(i = 0, ,j = 0; (i first_word_length) (j sec

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档