DEBUG 不适用于所有可执行文件?

发布于 2024-10-30 01:39:44 字数 263 浏览 5 评论 0原文

我的电脑上安装了 Windows 7。我正在一起学习C语言和汇编语言。我使用 codeblock IDE 编写 C 代码,使用 emu8086 编写汇编代码。我可以从 DOS 提示符调试汇编代码,但不能调试 C 代码。为什么会这样呢? 我在编写 C 代码时选择控制台应用程序选项。它们可以在 DOS 提示符下自行运行良好,但不能通过 DEBUG 模式运行。 我打算观察C编译器创建的机器代码和符号汇编代码。 我假设使用 DEBUG 我应该能够跟踪所有可执行文件的执行,毕竟这是 DEBUG 的目的。不是吗?

I have Windows 7 installed on my PC. I am learning C and assembly language together. I use codeblock IDE for writing C codes and emu8086 for assembly codes. I am able to DEBUG the assembly codes from DOS prompt, but not the C codes. Why so?
I select console application option while writing C codes. they run well on their own from DOS prompt, but not through DEBUG mode.
I intend to observe the machine code and the symbolic assembly code created by the C compiler.
I was assuming that Using DEBUG I should be able to trace the execution of all executable files, after all that is the purpose of DEBUG. Isn't it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

又怨 2024-11-06 01:39:44

您可能需要下载 Microsoft 的Windows 调试工具并使用 Windbg(或毫无疑问,无论您使用什么编译器都附带了调试器)。

You probably want to download Microsoft's Debugging tools for Windows and use Windbg (or the debugger that undoubtedly came with whatever compiler you're using).

神也荒唐 2024-11-06 01:39:44

如果一个程序没有用调试符号编译(实际上每个程序都不是),那么在调试它时您将看不到 c 或其他源代码。你只会看到最低层,那就是装配。

If a program is not compiled with debug symbols (virtually every program is not), you will not see c or other source code when debugging it. You will only see the lowest level, and that is assembly.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文