国军标 软件测评 静态分析常见问题总结

2023-11-20


违背国军标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定义用括号
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

国军标 软件测评 静态分析常见问题总结 的相关文章

  • 最佳利用Mock提升测试效率的7个技巧!

    再聊这个问题之前 我们先了解一下公司技术架构的演变过程 这样我们才能真正体会到我们为什么要使用 Mock功能 单体应用 在早期 大部分公司的应用技术栈主要可以分为两大类 LAMP Linux Apache MySQL PHP 和 MVC S
  • 小白也能学会的创建Git仓库实操

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 2k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 软件测试/测试开发/全日制/测试管理丨Redis内存数据库

    Redis是一种开源 内存中的数据结构存储系统 它提供了高性能 灵活性和丰富的数据结构 以下是Redis内存数据库的基本介绍 键值存储 Redis基于键值对的存储模型 其中每个键都与一个特定的值相关联 这种简单的数据模型使其易于使用和理解
  • Linux终端常见用法总结

    熟悉Linux终端的基础用法和常见技巧可以极大提高运维及开发人员的工作效率 笔者结合自身学习实践 总结以下终端用法供同行交流学习 常 见 用 法 1 快捷键 1 1 Alt 在光标位置插入上一次执行命令的最后一个参数 1 2 Ctrl R
  • RF自动化环境安装+自动化实例解析

    RF定义 通用型的 自动测试框架 绝大部分的软件的的自动化系统都可以采用它 特点 测试数据文件 Test Data 对应一个个的测试用例 测试数据文件里面使用的功能小模块叫关键字 由测试库 Test Library Robot Framew
  • Python自动化操作:简单、有趣、高效!解放你的工作流程!

    今天跟大家分享一套自动化操作流程解决方案 基于 Python语言 涉及 pyautogui pyperclip pythoncom win32com 依赖包 安装命令为 pip install pyautogui pip install p
  • Jmeter 性能-并发量计算

    并发概念 指网站在同一时间访问的人数 人数越大瞬间带宽要求更高 服务器并发量分为 业务并发用户数 最大并发访问数 系统用户数 同时在线用户数 估算业务并发量的公式 C nL T C C 3 C的平方根 说明 C是平均的业务并发用户数 n是l
  • APP端网络测试与弱网模拟

    当前APP网络环境比较复杂 网络制式有2G 3G 4G网络 还有越来越多的公共Wi Fi 不同的网络环境和网络制式的差异 都会对用户使用app造成一定影响 另外 当前app使用场景多变 如进地铁 上公交 进电梯等 使得弱网测试显得尤为重要
  • 测试工程师能否作为一份「终身职业」?30岁+怎么办?

    讨论 测试工程师可否作为一份终生的职业 这是我在论坛看到的一个讨论 你的答案是什么呢 我希望大家能认真思考后给出一个属于自己的答案 无论你是新手入门 还是资深专家 回答这个问题请不要凭一腔热血 也不用过分消极 别总和钱挂钩 平心而论即可 就
  • 测试开发必知:有Tomcat,为什么还要Nginx?

    只用Tomcat 不用Nginx搭建Web服务 行不行 我曾经提出的愚蠢问题 今天详细给自己解释下 为什么必须用Nginx 不用Nginx 只用Tomcat的Http请求流程 浏览器处理一个Http请求时 会首先通过DNS服务器找到域名关联
  • 基于Loadrunner的性能分析及调优经验分享

    公司某个系统的微信端计划将开放给几百上千的人员登录查询 并且登录账号为同一账号多人使用 后台服务能够支撑起多用户的并发操作以及成百上千人登录微信端对生产数据库或者登录查询的性能效率高成为交付可靠生产环境的必要条件 因此 项目组决定提交测试
  • 软件测试|Pydantic详细介绍与基础入门

    简介 Pydantic 是一个强大的 Python 库 用于数据验证和解析 特别是用于处理 JSON 数据 它的主要目标是使数据验证和解析变得简单 直观和可维护 本文将介绍 Pydantic 的基础知识 包括如何定义模型 验证数据以及处理错
  • 软件测试|使用matplotlib绘制多种折线图

    简介 在数据可视化领域 Matplotlib是一款非常强大的Python库 它可以用于绘制各种类型的图表 包括折线图 本文将介绍如何使用Matplotlib创建多种不同类型的折线图 并提供示例代码 创建模版 在绘图之前 我们可以先创建我们的
  • 软件测试|pycharm关联GitHub的详细步骤

    简介 GitHub 是全球最大的开源代码托管平台之一 而 PyCharm 是一款强大的 Python 集成开发环境 将两者结合使用 可以提高团队协作和代码管理的效率 本文将详细介绍如何在 PyCharm 中管理 GitHub 账号 包括如何
  • 盲猜你不懂H5架构和原生架构的区别

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 一篇文章带你了解Python常用自动化测试框架——Pytest

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Jmeter 性能-阶梯负载最终请求数

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 摸爬滚打多年的打工人,总结了三条职场真理,绝不假大空!

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Web自动化测试 —— cookie复用

    一 cookie简介 cookie是一些数据 存储于用户电脑的文本文件中 当web服务器想浏览器发送web页面时 在链接关闭后 服务端不会记录用户信息 二 为什么要使用Cookie自动化登录 复用浏览器仍然在每次用例开始都需要人为介入 若用
  • UI自动化测试之Jenkins配置

    背景 团队下半年的目标之一是实现自动化测试 这里要吐槽一下 之前开发的测试平台了 最初的目的是用来做接口自动化测试和性能测试 但由于各种原因 接口自动化测试那部分功能整个废弃掉了 其中和易用性有很大关系 另外 也和我们公司的接口业务也有关

随机推荐

  • 简单看看很好用的Vite

    前言 Vite对于前端到底需不需要打包提出了自己的观点 在某些情况下他做的确实更好 打包 首先回顾一下什么是打包 从结果导向来看 打包使得开发人员所写的代码和最终运行的代码是不甚相同的两个样子 这样做有什么好处呢 在HTTP2普及之前 浏览
  • 相机开启图像采集与结束图像采集的步骤

    如何开启图像采集线程与关闭该线程 步骤如下 一 按下采集按钮 开始创建一个图像采集线程 ch 按下开始采集按钮 en Click Start button void CBasicDemoDlg OnBnClickedStartGrabbin
  • ASI ‘CFNetwork SSLHandshake failed (-9824)‘

    文章目录 ASI CFNetwork SSLHandshake failed 9824 问题 解决 思考 参考 ASI CFNetwork SSLHandshake failed 9824 10年的老项目 网络库使用是ASIHTTPRequ
  • 微信小程序自动化测试pytest版工具使用方法

    mini https github com zx490336534 pytest mini 微信小程序自动化测试pytest插件 工具 基于MiniTest进行pytest改造 使用方法 准备测试小程序 根据miniprogram demo
  • 自己动手写操作系统(一)

    本系列文章将一步步实现一个简单的操作系统 实验环境是在Linux系统下通过Bochs虚拟机运行我们自己写的操作系统 一 实验环境搭建 1 Ubuntu的安装 Windows用户可以选择在虚拟机中安装Ubuntu 具体安装教程可自行搜索 2
  • UDIMM、LRDIMM、RDIMM三种内存的区别

    目前使用的内存条类型 DIMM 主要有三种 UDIMM RDIMM和LRDIMM UDIMM UDIMM 全称Unbuffered DIMM 即无缓冲双列直插内存模块 指地址和控制信号不经缓冲器 无需做任何时序调整 直接到达DIMM上的DR
  • JavaScript Array splice() 方法

    定义 splice 方法向 从数组添加 删除项目 并返回删除的项目 用法 array splice index howmany item1 itemX 参数 index index 必需 类型为整数 指定在什么位置添加 删除项目 使用负值指
  • Go_关键字、编译、转义字符

    关键字 关键字是指被go语言赋予了特殊含义的单词 共25个 关键字不能用于自定义名字 只能在特定语法结构中使用 break default func interface select case defer go map struct cha
  • 汽配企业如何利用MES管理系统优化生产流程

    随着汽车市场个性化需求不断增强 汽配企业急需数字化转型来满足客户需求 如何优化生产流程 提高生产效率和产品质量成为了关键问题 汽配企业MES管理系统可以通过数字化技术和智能化设备 优化生产流程 提高生产效率和产品质量 下面 我们将介绍汽配企
  • react(craco)移动端使用postcss-px-to-viewport自适应布局

    Craco 使用postcss px to viewport devDependencies craco craco 6 4 3 xianzhengquan postcss px 2 vw 0 0 1 postcss 8 3 0 peerD
  • java I/0操作 FileWriter类

    package filewriter p1 import java io FileWriter import java io IOException public class FileWriterDemo 获取当前系统的换行符 获取指定键指
  • ssh Forward X11

    参考链接 https www jianshu com p 24663f3491fa https www cnblogs com tsfh p 9022170 html https blog csdn net lvbian article d
  • Vue中修改浏览器图标Logo

    1 找到index html文件 2 修改这段代码中的图片 3 图标没有变化的话清除一下游览器缓存
  • linux查看根目录下所有文件夹大小的方法

    linux查看根目录下所有文件夹大小的方法如下 1 进入根目录 cd 2 使用命令 du sh 查看根目录下每个文件夹的大小3 进入占用空间比较大的文件夹 然后再使用2中命令查找大文件 原文地址 https zhidao baidu com
  • git的使用场景

    Git 是一种分布式版本控制系统 常用于管理软件开发过程中的代码 以下是 Git 的一些常见使用场景 代码版本控制 Git 可以跟踪代码的历史变更 并在必要时还原代码到以前的某个版本 分支管理 Git 可以创建多个分支 使得多个开发者能够并
  • 以太坊创始人Vitalik Buterin北京演讲:Casper与分片技术最新进展

    三言财经6月3日现场报道 在今天的以太坊技术及应用大会上 以太坊创始人Vitalik Buterin做了题为 Casper与分片技术最新进展 的主题演讲 V神在演讲中阐述了Casper和分片的技术流程 以及如何在系统中成为验证者验证节点 对
  • 中国中间件第一人---袁红岗

    最早开发Windows上的企业应用软件 打造独立知识产权的EJB服务器Apusus 很多JAVA程序员对袁红岗极其佩服 源于他做了很多人不敢想更不敢做的事情 这就是他打造了国产的EJB服务器 很快 金蝶将在国内推出自主产权EJB服务器的3
  • 小白也能快速学会的Micropython编译指南

    小白也能快速学会的Micropython编译指南 大家好 我是CSDN上的 上坂龍二 哦 今天给大家带来的是 如何快速一次成功地将Micropython和自己喜欢的模块编译进自己的Esp32固件中哦 事前准备 Python python的环
  • 【MySQL系列】--初识数据库

    个人主页 阿然成长日记 点击可跳转 个人专栏 数据结构与算法 C语言进阶 不能则学 不知则问 耻于问人 决无长进 文章目录 一 何为数据库 二 数据库的发展历程 三 数据库的分类 1 关系数据库 2 非关系型数据库 NoSQL 3 键值数据
  • 国军标 软件测评 静态分析常见问题总结

    违背国军标R x x x 禁止 define被重复定义 没有用 undef 解除前面的定义 违背国军标R 1 1 7 以函数形式定义的宏 参数和结果必须用括号括起来 违背国军标R 1 1 13 函数声明中必须对参数类型进行声明 并带有变量名