代码规范试用稿.ppt
《代码规范试用稿.ppt》由会员分享,可在线阅读,更多相关《代码规范试用稿.ppt(57页珍藏版)》请在三一办公上搜索。
1、代码规范试用稿,哈尔滨工业大学计算机科学与技术学院苏小红,关于代码风格问题,代码风格(Coding Style)是一种习惯现在许多大公司都对员工书写代码制定了规范开发大项目时由项目管理者制定代码规范程序风格的重要构成因素程序版式命名规则函数设计原则其他表达式规则与零比较常量规则动态数组内存管理,程序版式,程序版式程序员的书法比书法好学得多,基本不需要特别练习但是坏习惯一旦养成,就像书法一样难以改变不影响程序的功能,但影响程序的可读性追求清晰、整洁、美观、一目了然容易阅读,容易测试,程序版式,不良的风格,int isprime(int n)int k,i;if(n=1)return 0;k=sq
2、rt(double)n);for(i=2;i=k;i+)if(n%i=0)return 0;return 1;,#include#include main()int i;for(i=2;i100;i+)if(isprime(i)printf(%dt,i);,程序版式,良好的风格,int isprime(int n)int k,i;if(n=1)return 0;k=(int)sqrt(double)n);for(i=2;i=k;i+)if(n%i=0)return 0;return 1;,#include#include main()int i;for(i=2;i100;i+)if(ispri
3、me(i)printf(%dt,i);,程序版式,对齐(Alignment)与缩进(indent)保证代码整洁、层次清晰的主要手段“”位置的两种风格和独占一行,且位于同一列,与引用它们的语句左对齐,便于检查配对情况位于同一层和之内的代码在右边数格处左对齐,即同层次的代码在同层次的缩进层上一般用设置为4个空格的Tab键缩进,不用空格缩进,建议的风格,不建议的风格,程序版式,现在的许多开发环境、编辑软件都支持“自动缩进”根据用户代码的输入,智能判断应该缩进还是反缩进,替用户完成调整缩进的工作VC中有自动整理格式功能只要选取需要的代码,按ALT+F8就能自动整理成微软的cpp文件格式,程序版式,变量
4、的对齐规则数据类型+N个TAB+变量名+N个TAB+=+初始化值;例char name20;char addr30;char sex=F;int age=20;float score=90;,程序版式,空行分隔程序段落的作用在每个类声明之后加空行在每个函数定义结束之后加空行在一个函数体内,相邻两组逻辑上密切相关的语句块之间加空行,语句块内不加空行,程序版式,代码行内的空格增强单行清晰度关键字之后加空格函数名之后不加空格赋值、算术、关系、逻辑等二元运算符前后各加一空格,但一元运算符前后一般不加空格sum=sum+term;(向后紧跟,),;向前紧跟,紧跟处不留空格,;后留一个空格Function
5、(x,y,z)for(initialization;condition;update).-前后不加空格对表达式较长的for和if语句,为了紧凑可在适当地方去掉一些空格for(i=0;ic)&(b+ca)&(c+ab),程序版式,程序版式,代码行一行只写一条语句,这样方便测试一行只写一个变量,这样方便写注释int width;/宽度int height;/高度int depth;/深度尽可能在定义变量的同时,初始化该变量int sum=0;if、for、while、do等语句各占一行,执行语句无论有几条都用和将其包含在内,这样便于维护if(width height)DoSomething();/
6、空行OtherThing();,程序版式,程序版式,长行拆分代码行不宜过长,应控制在70-80个字符以内实在太长时要在适当位置拆分,拆分出的新行要进行适当缩进if(veryLongVar1=veryLongVar2),程序版式,修饰符*和,注释规范,注释(Comments)的重要性写注释给谁看?在哪些地方写注释?怎样写注释?注释的风格写注释时的注意事项可灵活运用的一些规则,注释规范,注释的重要性注释对于程序犹如眼睛对于人的重要性一样没有注释的程序对于读者好比眼前一团漆黑,跟拿到一个可执行程序别无二致不规范的注释和好几千度的近似眼没什么区别代码本身体现不出价值开发程序的思维才能使其变得有价值这种
7、思维的具体体现就是在于注释和规范的代码本身,注释规范,写注释给谁看?给自己看,使自己的设计思路得以连贯给继任者看,使其能够接替自己的工作,注释规范,写注释的最重要的功效在于传承要站在继任者的角度写简单明了、准确易懂、防止二义性让继任者可以轻松阅读、复用、修改自己的代码让继任者轻松辨别出哪些使自己写的,哪些是别人写的,注释规范,不好的注释i=i+1;/i加1return-1;/返回-1free(p);/释放p所指的内存fclose(fin);/关闭文件/*/*功能描述:本函数用于实现xxx功能,目的是:*/*入口参数:参数p,表示指向结构体的指针*/*出口参数:参数xx,表示*/*返回值:返回x
8、x值,当返回xx值时,表示*/*/,注释规范,不好的注释不但白写,还扰乱了读者的视线/*以二进制只读方式打开文件并判断打开是否成功*/if(fin=fopen(cat.pic,rb)=NULL)puts(打开文件cat.pic失败);/*如果打开失败,则显示错误信息*/return-1;/*返回-1*/*从图像的第1行到第400行循环*/for(i=0;i400;i+)/*从图像的第1列到第400列循环*/for(j=0;j400;j+)/*按照公式Y=0.299*R+0.587*G+0.114*B计算灰度值*/y=(299*r+587*g+114*b)/1000;fclose(fin);/*
9、关闭文件*/,注释规范,好的注释(尤其是算法注释)是对设计思想的精确表述和清晰展现,能揭示代码背后隐藏的重要信息/*打开输入文件后判断文件长度是否符合格式要求*/if(fin=fopen(cat.pic,rb)=NULL)puts(打开文件cat.pic失败);return-1;/*下面是图像转换的算法实现。彩色图像到灰度图像的转换主要利用RGB颜色空间到*YUV颜色空间的变换公式来取得灰度值,公式为Y=0.299*R+0.587*G+0.114*B*/for(i=0;i400;i+)for(j=0;j400;j+)y=(299*r+587*g+114*b)/1000;fclose(fin);
10、,注释规范,在哪些地方写注释?在重要的文件首部文件名+功能说明+作者+版本+版权声明+日期在用户自定义函数前对函数接口进行说明函数功能+入口参数+出口参数+返回值(包括出错处理)在一些重要的语句块上方对代码的功能、原理进行解释说明在一些重要的语句行右方定义一些非通用的变量函数调用较长的、多重嵌套的语句块结束处在修改的代码行旁边加注释,注释规范,函数的注释风格C风格/*/*功能描述:本函数用于实现xxx功能,目的是:*/*入口参数:参数xx,表示*/*出口参数:参数xx,表示*/*返回值:返回xx值,当返回xx值时,表示*/*/*功能描述:本函数用于实现xxx功能,目的是:入口参数:参数xx,表
11、示 出口参数:参数xx,表示 返回值:返回xx值,当返回xx值时,表示*/C+风格/功能描述:本函数用于实现xxx功能,目的是:/入口参数:参数xx,表示/出口参数:参数xx,表示/返回值:返回xx值,当返回xx值时,表示/,注释规范,一块语句的注释风格/*C风格*/C风格/*/*下面代码是用来接收网络数据,其原理为*/*/*/Visual C+风格/,注释规范,一行语句的注释风格/*C风格*/Visual C+风格i=j+1;/代码行右方的注释/代码行之上的注释i=j+1;例子ResetSrollInfo(g_hwndThumb);/初始化滚动条位置for循环while循环 if()/if结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 代码 规范 试用

链接地址:https://www.31ppt.com/p-5772987.html