c – 在大项目中寻找零

c – 在大项目中寻找零,第1张

概述最近,我们的大项目开始以未处理的划分为零.没有最近的代码似乎包含任何可能的元素,因此它可能是影响旧代码的新数据集.问题是代码基础相当大,并且在没有舒适的调试访问的嵌入式设备上运行(通过串行控制台调试大量的printf()),设备没有gdb,即使有,用调试符号编译的二进制文件将不适用). 最可行的方法可能是找到所有的分割 *** 作(它们相对不频繁),并分析每个分割 *** 作的代码,以查看是否有任何除数变量未被保 最近,我们的大项目开始以未处理的划分为零.没有最近的代码似乎包含任何可能的元素,因此它可能是影响旧代码的新数据集.问题是代码基础相当大,并且在没有舒适的调试访问的嵌入式设备上运行(通过串行控制台调试大量的printf()),设备没有gdb,即使有,用调试符号编译的二进制文件将不适用).

最可行的方法可能是找到所有的分割 *** 作(它们相对不频繁),并分析每个分割 *** 作的代码,以查看是否有任何除数变量未被保护.

那么问题是如何在一个大的(约200个文件,一个大的)C项目中找到所有的分区 *** 作,或者如果你有一个更好的主意如何找到错误,请给他们.

额外的信息:项目运行在嵌入式ARM9,一个小型定制的Linux发行版,与Cygwin / windows交叉编译器交互编译,IDE是Eclipse,但也有Cygwin与各种各样的好东西.事情是项目是非常硬件特定的,并且崩溃只有在全能运行时才会发生,所有必需的互连模块都处于活动状态.只有裸骨活动的限制“故障模式”不会创建它们.

解决方法 通过自定义 grep搜索,查找所有部门不应该很难.您可以轻松地将该用法与C中的/和%字符的其他用法区分开来.

另外,如果你知道你正在分割什么,你可以全局地重载/和%运算符以使__file__和__liNE__通知断言.如果使用makefile,则不必在所有链接的文件中包含自定义运算符代码,而不用触摸代码.

总结

以上是内存溢出为你收集整理的c – 在大项目中寻找零全部内容,希望文章能够帮你解决c – 在大项目中寻找零所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1254280.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存