问题 8 – 是否存在断言和/或输入/输出检查?
嵌入式软件开发人员应该在他们的代码中添加断言 , 以验证他们对程序在某些点的行为的假设是否正确 , 应对入站和出站数据执行边界检查 。 还记得那句老话“垃圾进 , 垃圾出”吗?
问题 9 – 是否有标题保护在场?
标题保护是一个简单的宏 , 可确保标题文件在翻译单元中不包含多次 。 保护是防止双重包含 #include 指令 。 不包括标题保护可能会导致一些非常奇怪的静态分析行为 , 更重要的是 , 嵌入式开发人员使用保护可以防止多个定义错误 。
问题 10 – 是否使用了浮点数学?
浮点数学的使用在嵌入式系统中可能是一个棘手的主题 。 资源受限的微控制器通常不包括浮点单元 (FPU) 。 这种缺失意味着处理器只有一种执行浮点计算的方法:使用库函数 。 用于浮点数学的库函数通常缓慢且效率低下 , 它们不一定具有确定性行为 , 并且它们可能导致代码规模膨胀 。 由于这些原因 , 开发人员应仔细考虑何时在微控制器中使用浮点 。 他们还应该执行额外的测试 , 并应该考虑替代方法 , 例如查找表、缩放和定点数学 。
结论
【无人车|嵌入式开发:成功进行代码审查的10个问题】许多工程师发现代码审查非常无聊 , 但实际上很有趣 , 因为执行代码审查可能是一个非常激动人心的时刻 。 每个程序员对嵌入式软件开发和 C 语言都有自己独特的观点和见解 , 所以总有一些东西需要学习 。 然而 , 尽管嵌入式开发人员正在实施许多见解和不同级别的检查和平衡 , 但错误仍然存在 。 这十个问题解决了开发嵌入式软件时应在每次代码审查时检查的常见错误和误解 。
- iPhone|饭制版iPhone 15 Ultra渲染图出炉:新设计“撞车”小米13
- 本文转自:央视网央视网消息:近日|超八倍任务时间!我国百吨级火箭发动机单台最长试车创新纪录
- 华为|余承东称华为能帮中国车企把高端品牌做起来:做低端卖爆没有意义
- 俄军|如何用大疆无人机,俄军教官秀技巧,引发战场革命,前线供不应求!
- iPhone手机|苹果iPhone 14“车祸检测”功能立功 成功帮助男子救出妻子
- 本文转自:人民网-陕西频道人民网西安12月13日电(贾凯璐)近日|超原纪录63分钟!西工大扑翼式无人机创吉尼斯世界纪录
- 老外热议浙大展示真正蜂群无人机技术,老外:让人既惊讶又恐怖
- 本文转自:人民日报海外版6月25日|智慧物流加速拓宽发展“快车道”
- 尴尬了!NASA称在登月领域击败中国,月球车却被指抄袭祝融号
- 淘宝|淘宝最“佛系”卖家:不烧直通车不打折,单品一年卖超10万件
