安全级 C语言编程规范(草稿)

本文档制定了安全级C语言编程规范,旨在确保软件开发过程中的代码质量、一致性及可维护性。规范包括变量声明、宏定义与常量、静态与全局变量的使用、类型转换、基本语句、结构体与指针、函数设计、程序版式等方面,遵循MISRA等标准,避免使用潜在危险的语法和操作,强调代码的可读性和安全性。
摘要由CSDN通过智能技术生成


标准名称: C语言编程规范

标准编号:

版次号:A

受控号:







拟制:窦力争                2008 年  月  日

审核:                2008 年  月  日

批准:                2008 年  月  日 

1 概述

为了保证公司在软件开发过程中,全体成员的代码减少隐患,风格一致,便于维护,提高软件产品的质量和保持开发产品的持续性,特制定本编码规范。 

暂定本规范适用于                的C编码工作。

2 变量声明

2.1 变量的命名:

可以用多个英文单词拼写而成,每个英文单词的首写字母要大写,命名应当直观且可以拼读,可望文知意;变量的前缀表示该变量的类型。



类型	前缀	类型名称

bool	b	布尔型

(unsigned) char	(u)ch	(无符号)字符型

(unsigned) short	(u)sh	(无符号)短整型

(unsigned) int	(u)i	(无符号)整型

(unsigned) long	(u)l	(无符号)长整型

float	f	浮点型

point	p	指针

array	a	数组 

string	str	字符串

Member	m_	成员变量

global	g_	全局变量

Static 	s_	静态变量



2.2宏定义和常量全用大写的字母,用下划线分割单词。

例如:

	const int MAX = 100;

	#define MAX_LENGTH  100

2.3静态变量加前缀s_(表示static)。

例如:

void Init(…)

{

	static int s_initValue;	// 静态变量

	…

}

2.4在可能的情况下减少全局变量的使用,全局变量加前缀g_(表示global)。例如:

int g_iManyPeople;	// 全局变量

2.5 类型转换:

尽量避免强制类型转换;如果不得不作类型转换,尽量用显式方式。

2.6必须在定义变量的同时初始化该变量

如果变量的引用处和其定义处相隔比较远,变量的初始化很容易被忘记。如果引用了未被初始化的变量,可能会导致程序错误。所以本条可以减少隐患。且曾强其代码可测性。

3 基本语句

3.1不可在for 循环体内修改循环变量,防止for 循环失去控制。(指南)

3.2 不准使用switch 语句。(1058)

3.3不要使用goto语句。(1058)

3.4 不得使用三元操作符(MISRA)

3.5不得残留被注释掉的废代码。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值