程序崩溃有关问题
程序崩溃问题今天偶然发现我写的应用程序崩溃了,记下崩溃地址是:3FD0938,查看相应的MAP文件,程序的最大地
程序崩溃问题
今天偶然发现我写的应用程序崩溃了,
记下崩溃地址是:3FD0938,
查看相应的MAP文件,程序的最大地址才62b0ac,
请问,我如何定位到问题源代码行或函数?
[解决办法]
这个地址不是你的真实地址,你弄错了.崩溃的原因有很多.你可以写日志来临近大概的模块,然后 再具体的一步步的确定你的具体地址.
如果你程序做过修改,重点看一下修改的地方,对API的适用范围也要进行查看,有时候儿会出问题,比如时间函数有没有超范围等.
[解决办法]
顶起,学习哈,谢谢各位
[解决办法]
[解决办法]可以在模块出入口及关键函数内添加打印信息,逐步确认缩小异常范围。
[解决办法]可以在.map文件中定位
[解决办法][解决办法]楼上的方法我不会用呢,我一般是加串口输出语句来缩小范围的,
其实楼主的错误一般是内存异常的情况
[解决办法]sunrain_hjb侠
那个IDA的反汇编确实很有用
可惜不会用呢
[解决办法]内存泄漏?系统异常?
[解决办法][解决办法]int *p;
p = NULL;
*p = 3;
不一定是这样明显的错误,也可能是内存越界访问之后无意中修改掉了后面内存部分的值,这时候异常还没有发生,可能过了很久,用到这部分被修改了的非预期的值之后,异常产生了.
并且你现在的异常本身的诱因就是地址错误,那么更加难找到.只能看看异常之前都运行了什么代码,一行一行检查.
[解决办法]学习了。
[解决办法]MARK,学习下
[解决办法]在调试模式下运行,看看程序死在哪里,我都是这样调试的,有时候我的程序要运行一天才会出现错误,我就让程序在debug下运行
[解决办法]说说怎么解决的哈
[解决办法]可能是空指针造成的内存地址越界的问题。
[解决办法]还真是高手,
本来想说2句,一看插不上嘴,
支持一下吧