华为编程规范50题

问题描述:华为编程规范 大家好,小编来为大家解答以下问题,华为编程语言基础考试,华为编程规范题库 Java,今天让我们一起来看看吧!

华为c语言编程规范是怎样的

华为编程规范50题的相关图片

华为编程规范举例:

1-1:程序块要采用缩进风格编写,缩进的空格数为4个。

说明:对于由开发工具自动生成的代码可以有不一致。

1-2:相对独立的程序块之间、变量说明之后必须加空行。

1-3:较长的语句(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。

1-4:不允许把多个短语句写在一行中,即一行只写一条语句。

1-5:if、for、do、while、case、switch、default等语句自占一行,且if、for、do、while等语句的执行语句部分无论多少都要加括号{}。

1-6:对齐只使用空格键,不使用TAB键。

说明:以免用不同的编辑器阅读程序时,因TAB键所设置的空格数目不同而造成程序布局不整齐,不要使用BC作为编辑器合版本,因为BC会自动将8个空格变为一个TAB键,因此使用BC合入的版本大多会将缩进变乱。

1-7:函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格,case语句下的情况处理语句也要遵从语句缩进要求。

1-8:程序块的分界符(如C/C++语言的大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及if、for、do、while、switch、case 语句中的程序都要采用如上的缩进方式。

1-9:一行程序以小于80字符为宜,不要写得过长。

2-1:一般情况下,源程序有效注释量必须在20%以上。

说明:注释的原则是有助于对程序的阅读理解,在该加的地方都加了,注释不宜太多也不能太少,注释语言必须准确、易懂、简洁。

2-2:文件头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、修改日志等。

示例:下面这段头文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。

2-3:函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、调用关系(函数、表)等。

示例:下面这段函数的注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。

2-4:边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。

2-5:注释的内容要清楚、明了,含义准确,防止注释二义性。

说明:错误的注释不但无益反而有害。

2-6:注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置,不可放在下面,如放于上方则需与其上面的代码用空行隔开。

2-7:对于所有有物理含义的变量、常量,如果其命名不是充分自注释的,在声明时都必须加以注释,说明其物理含义。变量、常量、宏的注释应放在其上方相邻位置或右方。

2-8:数据结构声明(包括数组、结构、类、枚举等),如果其命名不是充分自注释的,必须加以注释。对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释放在此域的右方。

2-9:全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。

2-10:注释与所描述内容进行同样的缩排。

说明:可使程序排版整齐,并方便注释的阅读与理解。

2-11:避免在一行代码或表达式的中间插入注释。

说明:除非必要,不应在代码或表达中间插入注释,否则容易使代码可理解性变差。

2-12:通过对函数或过程、变量、结构等正确的命名以及合理地组织代码的结构,使代码成为自注释的。

说明:清晰准确的函数、变量等的命名,可增加代码可读性,并减少不必要的注释。

2-13:在代码的功能、意图层次上进行注释,提供有用、额外的信息。

说明:注释的目的是解释代码的目的、功能和采用的方法,提供代码以外的信息,帮助读者理解代码,防止没必要的重复注释信息。

程序编制说明书的相关图片

程序编制说明书

代码总体原则

清晰第一。清晰性是易于维护、易于重构的程序必须具备的特征。

简洁为美。简介就是易于理解并且易于实现。

选择合适的风格,与源代码风格保持一致。

头文件

头文件的设计体现了大部分的系统设计,不合理的头文件布局是编译时间过长的根因,实际上是不合理的设计。

头文件中适合放置接口的声明,不适合放置实现。

头文件应当职责单一。

头文件应向稳定的方向包含。

每一个.c文件应有一个同名的.h文件,用于声明需要对外公开的接口。

禁止头文件循环依赖。

禁止包含用不到的头文件。

头文件应当自包含。

编写内部#include保护符(#define保护)。

禁止在头文件中定义变量。

只能通过包含头文件的方式使用其他C提供的接口,禁止在C中通过extern的方式使用外部函数接口和变量。

禁止在extern "C"中包含头文件。

函数

函数设计的精髓:编写整洁函数,同事把代码有效组织起来。

一个函数仅完成一个功能。

重复代码应该尽可能提炼成函数。

避免函数过长,新增函数不超过50行。

避免函数的代码块嵌套过深,新增函数的代码块嵌套不超过4层。

可重入函数应避免使用共享变量;若需要使用,则应该通过互斥手段对其加以保护。

对参数的合法性检查,由调用者负责还是接口函数负责,应在项目组模块内统一规定。缺省由调用者负责。

对函数的错误返回码要全面处理。

设计高扇入,合理扇出(小于7)的函数。扇出是指调用其它函数的数目。扇入是指有多少上级函数调用它。

废弃代码要及时清除。

函数参数不变使用const限定。

函数应避免使用全局变量、静态局部变量和I/O操作,不可避免的地方应集中使用。

检查函数所有非参数输入的有效性,如数据文件、公共变量等。

函数的参数个数不超过5个。

在源文件范围内声明和定义的所有函数,除非外部可见,否则应该加static关键字。

标识符

标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。

产品、项目组内应保持同意的命名分格。

尽量避免名字中出现数字编号,除非逻辑上确实需要。

重构、修改部分代码时,应该保持和原有代码风格一致。

文件命令统一采用小写字符。因为不同系统对文件名大小写处理会有不同(windows不区分大小写,但是linux系统则区分)。

全局变量应增加“g_”前缀。

静态变量应增加“s_”前缀。

禁止使用单字节命名变量,但是允许定义i,j,k作为局部循环变量。

不建议使用匈牙利命名法。

对于数值或者字符串常量的定义,建议采用全大写字母,单词之间加下划线的方式命名。

变量

结构功能单一,不要设计面面俱到的数据结构。

不用或者少用全局变量

防止局部变量与全局变量同名

通讯过程中使用的机构,必须注意字节序。

严禁使用未经初始化的变量作为右值。

使用面向接口编程思想,通过API访问数据。

尽量减少没有必要的数据类型默认转换与强制转换。

宏和常量

用宏定义表达式时,要使用完备的括号。

将宏定义的多条表达式放在大括号中。

使用宏时,不允许参数发生变化。

不允许直接使用魔鬼数字。

除非必要,应尽可能使用函数代替宏。

常量建议用const定义代替宏。

质量

时刻注意易混淆的操作符

必须了解编译系统的内存分配方式,特别是编译系统对不同类型的变量的内存分配规则,如局部变量在何处分配、静态变量在何处分配等。

不仅关注接口,同样要关注实现。

禁止内存操作越界。

禁止内存泄漏。

禁止引用已经释放的内存空间。

编程时,要防止差1错误。

switch语句必须有default分支。

函数中分配的内存,在函数退出之前要释放。

不要滥用goto语句。

时刻注意表达式是否会上溢、下溢。

程序效率

在保证软件系统的正确性、简洁、可维护性、可靠性及可测试性的前提下,提高代码的效率。

通过对数据结构、程序算法的优化来提高效率。

将不变条件的计算移到循环体外。

对于多维大数组,避免来回跳跃式访问数组成员。

创建资源库,以减少分配对象的开销。

将多次被调用的“小函数”改为inline函数或者宏实现。

注释

优秀的代码可以自我解释,不通过注释即可轻易读懂。

注释的内容要清楚、明了,含义准确,防止注释二义性。

修改代码时,维护代码周边的所有注释,以保证注释与代码的一致性。不再有用的注释要删除。

文件头部应进行注释,注释需要列出:版权说明、版本号、生成日期、作者姓名、工号、内容、功能说明、与其他文件的关系、修改日志等,头文件的注释中还应有函数功能的说明。

函数声明处注释描述函数功能、性能及用法,包括输入和输出参数、函数返回值、可重入的要求等;定义处详细描述函数功能和实现要点,如实现的简要步骤、实现的理由、设计约束等。

全局变量要有详细的注释,包括对其功能、取值范围以及存取时注意事项等的说明。

尽量采用工具可以识别的格式注释。

排版与格式

程序块采用缩进风格编写,每级缩进为4个空格。

相对独立的程序块之间、变量说明之后必须加空行。

一行只写一条语句。

对等操作两边加空格,注释符与内容之间加空格。

编译

使用编译器的最高告警级别,理解所有的告警,通过修改代码而不是降低告警级别来消除所有告警。

在产品软件中,要统一编译开关、静态检查选项以及相应告警清除策略。

可测性

模块划分清晰,接口明确,耦合性小,有明确输入和输出,否则单元测试实施困难。

在统一项目组或产品组内,调测打印的日志要有统一的规定。

使用断言记录内部假设。

不能用断言来检查运行时错误。

华为c语言编程规范是怎样的的相关图片

华为c语言编程规范是怎样的

没有国家标准,但一些软件公司都制定了自己的编程标准规范,如华为的编程规范就是比较好,你可以到bbs.2ccc.com上去下载一个做参考.我是常用DELPHI编程的,你要做的试题应该是较简单且常见的题目,相信你也能顺利完成.。

有几段英文不懂(好像是航空方面的)的相关图片

有几段英文不懂(好像是航空方面的)

链接:

 提取码: fgwo《华为编程规范与范例》是一本计算机编程应用类书籍。

华为编程题3题只过了1题能录取吗

2631 Portage Avenue 。

Winnipeg,Manitoba R3j 0P7 。

Winnipeg,是加拿大MANITOBA省的省会城市,PORTAGE AVENUE翻译为货运大区。

上面这个是地址, portage大道2631号; r3j 0p7 是邮编 。

MB是容量单位”兆”缩写

LV是国际知名品牌[LOUISVUITTON(路易威登LV)] 简称,它的包包很有档次的。

VR(Virtual Reality)是虚拟现实的简称,这项技术原本是美国军方开发研究出来的一项计算机技术。VR媒体就是将VR技术应用于当今最具发展潜力的信息媒体Internet及其它的数字元媒介(如CD-ROM光盘、触摸屏等)上。它通过其专用软件,整合图像、声音、动画等,将三维的现实环境、物体等模拟成二维形式表现的虚拟现实,再由数字元媒介作为载体传播给人们。当人们通过该媒体浏览、观赏时就如身临其境一般,并且可以选择任一角度,观看任一范围内的场景或选择观看物体的任一角度。

BC这个在软件开发都眼中,就是一种编辑器,B-control editor 这个在《华为软件编程规范和范例》中,有提到 “1-8 :对齐只使用空格键,不使用TAB 键 说明:以免用不同的编辑器阅读程序时,因TAB键所设置的空格数目不同而造成程序布局不整齐,不要使用BC作为编辑器合版本,因为BC会自动将8个空格变为一个TAB键,因此使用BC合入的版本大多会将缩进变乱。BC还是加拿大温哥华的所在省或理解为”白痴 ,白菜”的代称。

原文地址:http://www.qianchusai.com/%E5%8D%8E%E4%B8%BA%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%8350%E9%A2%98.html

solidate翻译,solidarities翻译

solidate翻译,solidarities翻译

小米R1C桥接,小米wifi桥接后 上哪个ip

小米R1C桥接,小米wifi桥接后 上哪个ip

Scattered,scattered faith翻译

Scattered,scattered faith翻译

适合朗读简单英语短文,适合朗读简单英语短文的音频

适合朗读简单英语短文,适合朗读简单英语短文的音频

cc/松紧方向箭头

cc/松紧方向箭头

大金空调接入homeassistant

大金空调接入homeassistant

作文读书感悟经历450字,作文读书感悟经历450字怎么写

作文读书感悟经历450字,作文读书感悟经历450字怎么写

与兄弟和睦相处的名言警句,与兄弟和睦相处的名言警句大全

与兄弟和睦相处的名言警句,与兄弟和睦相处的名言警句大全

写一处景物350,写一处景物350字左右(植物园)

写一处景物350,写一处景物350字左右(植物园)

霸气正能量的句子经典短句,霸气正能量的句子经典短句英文

霸气正能量的句子经典短句,霸气正能量的句子经典短句英文