1、严格采用阶梯层次组织程序代码:

各层次缩进的分格采用 VC的缺省风格,即每层次缩进为4格,括号位于下一行。 要求 相匹配的大括号在同一列,对继行则要求再缩进4格。例如:

2、提示信息字符串的位置

在程序中需要给出的提示字符串,为了支持多种语言的开发, 除了一些给调试用的临时

信息外,其他所有的提示信息必须定义在资源中。

3、对变量的定义,尽量位于函数的开始位置。

二、命名规则:

1、变量名的命名规则

、变量的命名规则要求用 匈牙利法则”即开头字母用变量的类型,其余部分用变量 的英文意思或其英文意思的缩写 ,尽量避免用中文的拼音,要求单词的第一个字母应大写。

即:变量名=变量类型+变量的英文意思(或缩写)

对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。

见下表:

bool(BOOL)

用b开头

bIsPare nt

byte(BYTE)

用by开头

byFlag

short(i nt)

用n开头

n StepCo unt

Ion g(LONG)

用1开头

lSum

char(CHAR)

用c开头

cCo unt

float(FLOAT)

用f开头

fAvg

double(DOUBLE) 用 d 开头 dDeta

void(VOID)

用v开头

vVaria nt

un sig ned

int( WORD)

用w开头

wCo unt

un sig ned

Ion g(DWORD)

用dw开头

dwBroad

HANDLE

(HINSTANCE )

用h开头

hHa ndle

DWORD

用dw开头

dwWord

LPCSTR(LPCTSTR)用 str 开头 strString

用0结尾的字符串用sz开头 szFileName

对未给出的变量类型要求提出并给出命名建议给技术委员会。

、指针变量命名的基本原则为: 对一重指针变量的基本原则为:

“ p”变量类型前缀+命名

如一个float*型应该表示为pfStat

对多重指针变量的基本规则为:

二重指针:“ pp”变量类型前缀+命名

三重指针:“ ppp”变量类型前缀+命名

、全局变量用g_开头,如一个全局的长型变量定义为g」FailCount,即:变量名=g_+

变量类型+变量的英文意思(或缩写)

、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_ In st, 即:变量名

=s_+变量类型+变量的英文意思(或缩写)

、成员变量用 m_开头,如一个长型成员变量定义为m」Count;即:变量名=m_+变量

类型+变量的英文意思(或缩写)

、对枚举类型(enum )中的变量,要求用枚举变量或其缩写做前缀。并且要求用大 写。

女口: enum cmEMDAYS

{

EMDAYS_MONDAY;

EMDAYS_TUESDAY;

};

、对struct > union、class变量的命名要求定义的类型用大写。并要加上前缀,其内 部变量的命名规则与变量命名规则一致。

结构一般用S开头

女口: structScmNPoint

{

intn X;....

/

为了头文件被重复包含要求对头文件进行定义如下:

#ifndef __FILENAME_H__

#define __FILENAME_H__

其中FILENAME为头文件的名字。

4、其他注释:

在函数内我们不需要注释每一行语句。但必须在各功能模块的每一主要部分之前添加块

注释,注释每一组语句,在循环、流程的各分支等,尽可能多加以注释。

其中的循环、条件、选择等位置必须注释。

对于前后顺序不能颠倒的情况,建议在注释中增加序号。

例如:

在其他顺序执行的程序中,每隔3 — 5行语句,必须加一个注释,注明这一段语句所组

成的小模块的作用。对于自己的一些比较独特的思想要求在注释中标明。

四、程序健壮性:

1、函数的返回值规范:

对于函数的返回位置,尽量保持单一性,即一个函数尽量做到只有一个返回位置。(单

入口单出口)。

要求大家统一函数的返回值,所有的函数的返回值都将以编码的方式返回。

例如编码定义如下:

#define CM_POINT_IS_NULLCMMAKEHR(0X200)

建议函数实现如下:

long 函数名(参数,)

{

long IResult; //保持错误号

IResult=CM_OK;

//如果参数有错误则返回错误号

if(参数==NULL)

{

lResult=CM_POINT_IS_NULL;

goto END;

}

END:

return lResult;

}

2、关于goto的应用:

对goto语

C语言变量d的定义法则,C语言变量命名规则(3页)-原创力文档相关推荐

  1. c语言通过指针变量输出10个元素,C语言程序设计第2版指针程序设计(10页)-原创力文档...

    C 语言程序设计 - 理论方法与实践(第 2 版) 7.4.1 简单指针变量作函数参数 例 7-9 用比较交换法 ,将一维数组的最 大值移到数组的最 末元素位置,交换 过程用上述 swap() 函数实 ...

  2. c语言程序设计 赵宏,C语言程序设计(模块化程序设计I )(6页)-原创力文档...

    第4章 模块化程序设计I (导学) C语言程序设计课程组 赵宏 示例:从键盘输入一个整数,判断该整数是否为素数. #include #include void main( ) { int x,i; s ...

  3. c语言二级试题讲解,C语言试题,二级C语言试题讲解(9页)-原创力文档

    二级 C 语言程序设计模拟试题(一) 一.单项选择题. (每小题1 分,共 20 分) 1.一个 C 语言程序是由( B )组成. A) 一个函数 B) 一个或若干个函数 C) 一个过程 D) 一个过 ...

  4. C语言对p1口取反,单片机c语言编程基础(5页)-原创力文档

    单片机的外部结构: 1. DIP40双列直插: 2. P0,P1,P2,P3四个8位准双向I/O引脚:(作为I/O输入时,要先输出高电平) 3. 电源VCC(PIN40)和地线GND(PIN20): ...

  5. 何樱c语言,C语言程序设计-电子教案-连卫民(442页)-原创力文档

    本课件都是本人上完课以后,进行整理得到的,便于大家分享 本章结束! C语言程序设计 主编:连卫民 何 樱 第9章 结构体.共用体和枚举类型 本章主要内容: 9.1 结构体(重点) 9.2 链表(重点) ...

  6. 数字ab写成c语言表达式,《C语言程序设计》复习题(21页)-原创力文档

    <C 语言程序设计>复习题 一. 判断题(本大题共 60 个小题) 1. C 程序执行的入口是 main() 函数,所以 main 函数必须放在程序的开头. (B ) 2. 定义一个函数包 ...

  7. c语言设计成行考核答案,20秋广东开放大学C语言程序设计成性考核参考答案(10页)-原创力文档...

    答案找我: / 百年教育职业培训中心: / 广东开放大学 形成性考核 满分资料 百年教育职业培训中心 C语言程序设计#(本20春) 形成性考核 期末形成性测试 题目1 未回答 满分4.00 未标记标记 ...

  8. 三个等价c语言表达式,C语言习题综合(20页)-原创力文档

    第二章练习题 -.选择题 1. 以下选项中正确的实型常量 2 A 0 B 3. 1415 C 0.329×10 D .871 2.不合法的用户标识符 A _123 B printf C A $ D D ...

  9. c语言课程设计2018,C语言课程设计报告(2018)——学生管理系统(17页)-原创力文档...

    兰州交通大学博文学院 <C语言程序设计> 课 程 设 计 报 告 系 别: 交通运输系 班 级: 16交通运输(3)班 姓 名: 学 号: 指导老师: 2018年1月5日 兰州交通大学博文 ...

最新文章

  1. LeetCode算法题3:求最大子序列和
  2. Android图片资源获取原则
  3. 【学习笔记】30、Python基础综合练习
  4. 【转载】如何做一份突出的PPT
  5. 【数据结构与算法】之深入解析“二叉树的锯齿形层序遍历”的求解思路与算法示例
  6. nginx phase handler的原理和选择
  7. html5 --- IDBDatabase创建对象存储和索引
  8. 深度学习之卷积神经网络 VGGNet
  9. 彻底卸载acer软件保护卡_宏碁(Acer)传奇 14英寸 新一代7nm六核处理器 真香机 高性能宏基笔记本电脑(R5-4500U 7纳米 16G 512GSSD )...
  10. 读书笔记--Head First C#目录
  11. Java8之list.stream的常见使用例子
  12. Android中生成库文件与移除以及导入jar包重复问题
  13. Foreign Language_english_补语
  14. 项目使用微信公众平台图片显示此图片来自微信公众平台 解决方法
  15. 虚拟机安装(保姆级教程)
  16. LeetCode 860[Python]. 柠檬水找零 在柠檬水摊上,每一杯柠檬水的售价为 5 美元。 顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。
  17. GMSL部分问题解答/含官方FAE解答
  18. UnityShader学习之路(01) 漫反射
  19. 某市电子政务监控预警平台建设方案
  20. 淄博旅游景点与美食汇总

热门文章

  1. html中iframe根据子页面内容动态修改高度
  2. 【bzoj2648】SJY摆棋子 KD-tree
  3. UICollectionViewCell的设置间距
  4. Docker介绍及安装
  5. 【转】MyEclipse快捷键大全(绝对全)
  6. WPF的ComboBox 数据模板自定义
  7. pb将datawindow数据导出EXCEL
  8. TextBox只输入数字和event.keyCode的键码值
  9. JavaScript设计模式(一)-- 简单工厂模式
  10. 基于css和js的轮播效果图实现