华为编程规范(编程是不是要尽量多用函数,避免一大堆代码都写在一个过程里)

2024-03-13 00:00:02 :66

华为编程规范(编程是不是要尽量多用函数,避免一大堆代码都写在一个过程里)

各位老铁们,大家好,今天由我来为大家分享华为编程规范,以及编程是不是要尽量多用函数,避免一大堆代码都写在一个过程里的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

本文目录

编程是不是要尽量多用函数,避免一大堆代码都写在一个过程里

也不是尽量多用函数,举个例子你走极端把每个块都定义成函数,只能是制造混乱,你要维护一个代码里连续跟踪进十几个函数,我经历过,那真是一个惨啊。一般来讲做到按复用性、功能划分程序即可。具体要到程度可能要做一两个实际项目,看看软件工程的书也会了解得更快一点。

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

代码总体原则清晰第一。清晰性是易于维护、易于重构的程序必须具备的特征。简洁为美。简介就是易于理解并且易于实现。选择合适的风格,与源代码风格保持一致。头文件头文件的设计体现了大部分的系统设计,不合理的头文件布局是编译时间过长的根因,实际上是不合理的设计。头文件中适合放置接口的声明,不适合放置实现。头文件应当职责单一。头文件应向稳定的方向包含。每一个.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个空格。相对独立的程序块之间、变量说明之后必须加空行。一行只写一条语句。对等操作两边加空格,注释符与内容之间加空格。编译使用编译器的最高告警级别,理解所有的告警,通过修改代码而不是降低告警级别来消除所有告警。在产品软件中,要统一编译开关、静态检查选项以及相应告警清除策略。可测性模块划分清晰,接口明确,耦合性小,有明确输入和输出,否则单元测试实施困难。在统一项目组或产品组内,调测打印的日志要有统一的规定。使用断言记录内部假设。不能用断言来检查运行时错误。

编程问题 花括符后面空格几下的问题 各位程序达人请进

完全没有规定,你喜欢怎么留就怎么留。没有人会因为你留了几个空格说你山寨的。尽量养成写的时候换行缩进空格这些良好格式化的风格就行了。

华为编程规范

如果您的华为手机忘记锁屏密bai码,您可以参考如下方式解决:1、EMUI 5.0及以上的系统忘记密码,只能通过强制恢复出厂设置清除密码。这个方法会清除您之前的数据,请谨慎操作。操作步骤:1) 手机在关机状态、不插USB线的情况下,同时长按音键上键和电源键,直到显示开机logo界面时,松开电源键;2) 3 秒后再松开音量上键,即可进入 Recovery 模式;3) 进入后,选择恢复出厂设置。(通过音量键上下移动,开关机键确定)2、EMUI 5.0以下的系统忘记密码,在确保手机开机、联网、已登录华为账号、已打开“查找我的手机”(手机找回)功能时,可通过“远程锁定”修改密码。

静态测试的编码规范

一个项目或者一个企业,如果要下决心实施软件质量,实施软件工程,第一步要做的就是软件编码规范。编码规范是程序编写过程中必须遵循的规则,一般会详细规定代码的语法规则、语法格式等。企业实施怎样的编码规范,取决于很多个因素:l编程采用的语言,例如C、C、JAVA、ADA等。项目的规范化程度。目前现成的C/C编码规范有很多,例如前几年网络上比较流行的《华为公司编程规范》、《摩托罗拉C编程规范》等。但项目不能完全照搬,应该根据自己所处的阶段,定制属于自己的规范,否则的话,会让程序员无所适从,严重打击程序员的积极性。不同的行业对软件的可靠性有不同的要求,例如航空/航天的嵌入式软件对代码的要求很高,而传统的windows平台应用软件则相对要宽松。在嵌入式软件中,尤其是汽车行业,国际上目前流行的C语言编程规则为MISRA-C:2004,其中包括包括141条规则,其中121条是强制(Required)遵守的,20条是建议(Advisory)遵守的。

有了统一的规范后,测试工程师或者程序员自身,就可以实施编码规范检查了。要真正把编码规范贯彻下去,单单靠测试员程序员的热情,很难坚持下去,所以笔者建议借助于一些专业的工具来实施。在C/C语言的编程规则检查方面,比较专业的工具有Coverity,CTest、LINT工具、KlocWork(Insight)/QAC/QAC等,这些工具通常可以和比较流行的开发工具集成在一起,程序员在编码过程中,在编译代码的同时即同时完成了编程规则的检查。

DEV C++编译器下要用pow函数需要什么样的头文件啊

/************************* *水仙花数的实现(C++) *math.h是C语言的数学库函数 *************************/ #include 《iostream》 #include 《cmath》 using namespace std; int main() { for(int i=1;i《=9;++i) for (int j=0;j《=9;++j) for (int k=0;k《=9;++k){ if (abs((i*100+j*10+k-pow(i*1.0,3)-pow(j*1.0,3)-pow(k*1.0,3)))》1e-6) continue; cout《《i《《j《《k《《"\n"; } return 0; } /************************************** 不能出水仙花的原因就是判断那句: if (i*100+j*10+k-pow(i,3)-pow(j,3)-pow(k,3)) continue; 有两个错误: 第一个pow(double,double),pow(float,float),你提供的是pow(int ,int),系统不知道该匹配哪一个??? 第二pow返回的是double,你用if(double)???对于if(double==0)这种判断是不对的,假设是if(5-4.999999),因为5在double里很有可能就是用4.99999来表示的。由于精度的原因,所以应该是if(abs(double)《Exp),也就是if(|5-4.999999|《0.0001),两个数绝对值小于精度,这样来判断相等,改进如上 ***************************************/

VC++的一个小疑问

MS的又一个发明,在代码里面写注释,这东东叫Microsoft’s standard source code annotation language(SAL)它告诉读代码的人,这个函数的参数都有些什么特征,比如参数是用来输入还是返回、指针是否为空、字符串缓冲区的特征等等如果不想看它,就当它是空气。

如果你还想了解更多这方面的信息,记得收藏关注本站。

华为编程规范(编程是不是要尽量多用函数,避免一大堆代码都写在一个过程里)

本文编辑:admin
华为编程规范 ,不
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.