违背国军标R-x-x-x 禁止#define被重复定义。没有用’#undef’解除前面的定义
违背国军标R-1-1-7 以函数形式定义的宏,参数和结果必须用括 括起来
违背国军标R-1-1-13 函数声明中必须对参数类型进行声明,并带有变量名
违背国军标R-1-1-14 函数声明必须与函数原型一致
违背国军标R-1-1-16 外部声明的变量,类型必须与定义一致
违背国军标R-1-1-18 数组定义禁止没有显式的边界限定
违背国军标R-1-1-23 函数参数表为空时,必须使用void明确说明。
违背国军标R-1-2-2 if、else if、else必须用大括 括起来。
违背国军标R-1-2-4 引起二义性理解的逻辑表达式,必须使用括 显式说明优先级顺序。
违背国军标R-1-2-5 逻辑判别表达式中的运算项必须要使用括 。
违背国军标R-1-2-6 禁止嵌套注释。注释要规范
违背国军标R-1-3-8 动态分配的指针变量第一次使用前必须进行是否为NULL的判别。
违背国军标R-1-4-1 在if-else if语句中必须使用else分支。
违背国军标R-1-4-6 除枚举类型列举完全外,switch必须要有default。
违背国军标R-1-6-3 禁止在逻辑表达式中使用赋值语句。
违背国军标R-1-6-6 对变量进行移位运算禁止超出变量长度
违背国军标R-1-6-8 数组禁止越界使用。(需求的不确定性会导致设计修改冗余设计,确定性不足)
违背国军标R-1-7-7 有返回值的函数必须通过返回语句返回。
违背国军标R-1-7-10 函数返回值的类型必须与定义一致
违背国军标R-1-7-11 具有返回值的函数,其返回值如果不被使用,调用时应有(void)说明。
违背国军标R-1-7-15 禁止在函数参数表中使用省略 void putToDebug(const char *format, …);
违背国军标R-1-8-1 禁止不可达语句。条件判断中,分支永远不会被执行。
违背国军标R-1-9-3 禁止在for循环体内部修改循环控制变量。
违背国军标R-1-10-1 浮点数变量赋给整型变量必须强制转换。
违背国军标R-1-11-1 变量禁止未赋值就使用。
违背国军标R-1-11-2 变量初始化禁止隐含依赖于系统的缺省值。
违背国军标R-1-11-4 枚举元素定义中的初始化必须完整。
违背国军标R-1-12-2 禁止对指针进行大于或小于的逻辑比较。
违背国军标R-1-12-4 禁止对无符 数进行大于等于零或小于零的比较。
违背国军标R-1-12-5 禁止无符 数与有符 数之间的直接比较。涉及到隐式转换:整型转换为无符 整型。
违背国军标R-1-13-2 禁止函数形参与全局变量同名。
违背国军标R-1-13-11 禁止单独使用小写字母i或大小字母O作变量名。
主要问题总结:
1.外部引用变量类型错误;
2.数组越界;
3.缓存及变量赋初值;全局和局部声明变量赋初值
4.设置异常保护/边界限制处理;
5.c语言处理语法上的不规范操作。c语句后{,}以及调用系统函数后{,}函数无入口参数或无返回值需要用void以及define定义用括
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!