您当前的位置:首页 > 计算机 > 编程开发 > C语言

非计算机专业C语言初学者编程规范(学生用)―变量与结构

时间:12-30来源:作者:点击数:

5.1 谨慎使用全局(公共)变量

(1)去掉没必要的公共变量。公共变量是增大模块间耦合的原因之一,故应减少没必要的公共变量以降低模块间的耦合度。

(2)仔细定义并明确公共变量的含义、作用、取值范围及公共变量间的关系。在对变量声明的同时,应对其含义、作用及取值范围进行注释说明,同时若有必要还应说明与其它变量的关系。

(3)防止局部变量与公共变量同名——通过使用较好的命名规则来消除此问题。

5.2 数据类型间的转换

(1)编程时,要注意数据类型的强制转换。当进行数据类型强制转换时,其数据的意义、转换后的取值等都有可能发生变化,而这些细节若考虑不周,就很有可能留下隐患。

(2)对编译系统默认的数据类型转换,也要有充分的认识。示例:如下赋值,多数编译器不产生告警,但值的含义还是稍有变化。

char chr;
unsigned short int exam;
chr = -1;
exam = chr; // 编译器不产生告警,此时exam为0xFFFF。

(3)尽量减少没有必要的数据类型默认转换与强制转换。例如,所有的 unsigned类型都应该有后缀“U”以明确其类型。

(4)合理地设计数据并使用自定义数据类型,避免数据间进行不必要的类型转换。

(5)对自定义数据类型进行恰当命名,使它成为自描述性的,以提高代码可读性。注意其命名方式在同一产品中的统一,并且保证没有多重定义。使用自定义类型,可以弥补编程语言提供类型少、信息量不足的缺点,并能使程序清晰、简洁。

示例:可参考如下方式声明自定义数据类型。下面的声明可使数据类型的使用简洁、明了。

typedef unsigned char  BYTE;
typedef unsigned short WORD;
typedef unsigned int   DWORD;

下面的声明可使数据类型具有更丰富的含义。

typedef float DISTANCE;
typedef float SCORE;

(6)不要用八进制数——整型常数以”0“开始会被认为是8进制。示例:

code[1]=109
code[2]=100
code[3]=052
code[4]=071

如果是对总线消息初始化,会有危险。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门