c++ - 什么时候用汇编语言调试c/c++程序?

标签 c++ c debugging assembly

什么时候使用程序集调试c/c++程序?

学习一些汇编对调试程序有帮助吗?

最佳答案

在您(还)不能可靠地重现 错误,例如由于堆/堆栈损坏。你可能会得到一个或两个核心 转储,很可能来自客户。即使假设您的调试器是 靠谱,看汇编就能准确告诉你哪条指令是 崩溃(因此哪 block 内存已损坏)。

此外,根据我的经验(主要是内核调试)调试器 在处理优化代码方面相对较差。他们得到这样的东西 参数/等错误,真的告诉我发生了什么我需要看看 拆卸。

如果我可以可靠/轻松地重现问题,它往往没有那么有用 处理反汇编,因为我会从步进中获得更多信息 通过程序。另一方面,达到你可以 重现问题通常是解决问题的一半以上。

关于c++ - 什么时候用汇编语言调试c/c++程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/961237/

相关文章:

c++ - 如何将数组传递给函数?使用 C++ 作为 OO 类

objective-c - 将 block 传递给需要函数指针的函数

C - 为什么我的变量没有被销毁?

android - React Native 调试器无法导入 bundle 脚本?

visual-studio - 运行测试时 Debug.WriteLine() 发生两次

android - 在由 Android 应用程序链接的 native 库中调试崩溃的最简单方法?

c++ - 友元函数和命名空间

C++编译错误: has initializer but incomplete type

c - Linux 如何确定自定义信号处理程序的优先级?

C++ 指向类名的指针数组