C语言编程规范--------5 变量与结构

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

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

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

(3)明确公共变量与操作此公共变量的函数或过程的关系,如访问、修改及创建等。明确过程操作变量的关系后,将有利于程序的进一步优化、单元测试、系统联调以及代码维护等。这种关系的说明可在注释或文档中描述。示例:在源文件中,可按如下注释形式说明。

全局变量    函数    System_Init Input_Rec   Print_Rec   Stat_Score

Student Create  Modify  Access  Access

Score   Create  Modify  Access  Access, Modify

注: Create表示创建,Modify表示修改,Access表示访问。

其中,函数Input_Rec、Stat_Score都可修改变量Score,故此变量将引起函数间较大的耦合,并可能增加代码测试、维护的难度。

(4)当向公共变量传递数据时,要十分小心,防止赋与不合理的值或越界等现象发生。对公共变量赋值时,若有必要应进行合法性检查,以提高代码的可靠性、稳定性。

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

 

5.2 合适地定义和使用结构

结构的功能要单一,是针对一种事务的抽象

posted @ 2016-07-12 14:40  mrsandstorm  阅读(377)  评论(0编辑  收藏  举报