MISRA 教程中心
MISRA中文网站 > 教程中心
教程中心分类
MISRA
编码规范
前往了解
在MISRA C项目中,函数返回值是否可以忽略,不能只根据“程序能否正常运行”判断。返回值可能承载执行状态、错误信息或计算结果,如果调用后直接丢弃,很容易把真正的异常处理遗漏隐藏起来。围绕“MISRA C函数返回值可以忽略吗,MISRA C未使用返回值如何合规处理”,需要区分普通返回值、错误状态返回值以及确实经过分析后决定不使用的返回值,再选择对应处理方式。
2026-08-18
在普通C程序中,递归本身符合C语言语法,但在MISRA C项目中,是否能用不能只看编译器是否接受。递归会让最大调用深度、栈空间和执行时间更难确定,因此在安全相关和高可靠嵌入式软件中受到严格限制。处理“MISRA C允许使用递归函数吗,MISRA C递归调用违反哪些规则”时,应先明确Rule 17.2的要求,再区分直接递归、间接递归以及正式偏离三种情况。
2026-08-18
switch在状态机、通信协议解析和模式选择中使用频率很高,同时也是MISRA C重点约束的控制结构之一。进行“MISRA C对switch语句有哪些要求,MISRA C switch语句缺少default如何处理”时,应关注分支结构是否清晰、异常输入是否有处理路径,以及整改后是否仍存在控制流隐患。以下主要按照MISRA C:2012的Rule 16.x规则说明。
2026-08-18
在嵌入式C代码中,指针加减、数组遍历和缓冲区访问非常常见,但这类写法一旦越过有效对象边界,就可能造成未定义行为或访问错误。MISRA C因此没有把重点放在“能不能使用指针”,而是要求指针运算的目标范围、两个指针之间的关系以及访问边界都能够被明确判断。处理“MISRA C指针运算有哪些限制,MISRA C指针运算违规怎么检查”时,重点应关注Rule 18.1至Rule 18.4,并结合静态分析和代码审查确认指针始终处于合法对象范围。MISRA官方对Rule 18.1的补充说明也进一步明确了指针运算与对象边界之间的关系。
2026-08-18
MISRA规则库的维护以及升级后对历史问题的处理,不能仅仅看作是去工具里面打开一组规则。需要长时间去管理的东西,还有MISRA的版本、工具的版本、规则跟规则之间怎么对应、编译的环境、项目里面做过哪些裁剪、严重等级是如何设定的,还有那些偏离了规则的记录。规则库在升级之后,规则的编号、适用的条件,还有工具具体实现的方式,都是有可能发生变化的,要是直接就拿新的规则去扫描老的代码,历史问题就很容易被重新统计一次,项目质量变化的趋势也就会跟着突然变得不真实。MISRA C:2025现在是MISRA C的现行版本,它是在原来版本的基础上做出来的增量更新,但是合规、偏离还有过程管理这些事情,还是应该按照一个统一的框架来执行。
2026-07-21
MISRA代码审查这项工作要怎样去开展,以及审查中发现问题之后要怎样形成闭环,这件事情不能简单地等同于运行一次静态分析工具,再把告警数量降到零。MISRA的合规检查,既包含可以由工具自动识别的编码规则,也包含那些需要结合设计文档和人工判断才能完成的指令要求。一套相对完整的审查过程,应当先把适用的版本、代码覆盖范围和规则等级确定下来,再把工具检查、人工评审、问题修复、偏离审批和回归验证这几项工作串联在一起。如果不是这样,就算工具报告已经显示全部处理完毕,项目仍然可能缺少可以追溯的合规证据。
2026-07-21
MISRA偏离记录不是给静态分析工具的告警补一句“确认无风险”,而是针对某一项规则的违背,进行一次正式的论证。记录里面需要说明,为什么这个违背没有办法直接去掉,它会出现在代码的什么位置,可能会带来哪些风险,以及为了控制这些风险,又采取了哪些限制措施和验证手段。只有走完规定的审核和批准流程,这条规则的违背,才能够作为一项受控的偏离被保留下来。
2026-07-21
在TESSY中,测试对象的创建与识别不完整的排查,重点在于让TESSY获得完整的待测源码和编译环境,再通过模块分析将可测试的函数识别出来。当测试对象没有完整显示时,问题通常并不在于测试用例本身,而是源文件的范围、头文件的路径、宏定义、条件编译或者筛选规则,与正式工程没有保持一致。排查时应当先查看分析日志,再去检查预处理之后的源码内容。
2026-07-21
EMTP怎么建立变压器模型EMTP变压器饱和特性怎么设置,在做电力系统暂态仿真时,这两个问题总是绕不过去的。给变压器搭模型这件事,并不是把容量、电压、变比往里一填就算完事了,特别是要分析空载合闸涌流、故障切除、过电压、铁磁谐振这类暂态现象的时候,绕组的阻抗、接线的方式、励磁支路,再加上饱和的那条曲线,全都会把结果给扯向不同的方向。要是模型弄得太粗糙,仿真倒也能吐出一条波形来,可这条波形到底能不能当工程上的参考,就很难讲了。
2026-06-29
在动手去模拟线路合闸涌流的时候,要紧的地方不是随便丢一个开关上去,然后就光盯着波形看了,得把线路的那些参量、电源那头是怎么个等值法、合闸到底掐在了什么时刻、线上是不是还挂着没散尽的电压、负荷那头又是怎么个状况,还有量东西的蹲点都给拨弄清爽了才行。线路合闸这档子事,本来就归在典型电磁暂态那堆毛病里头,EMTP这类家伙什常常被拉来跑电力系统的暂态仿真,在开关撂下去的时候,还经常得把合闸那一下子撞在哪个相角上这种没准头的事,也一并兜进来看它带来的结果。
2026-06-29

第一页123456下一页最后一页

135 2431 0251