如何用dev c++来调试程序

2025-01-05 02:44:33
推荐回答(2个)
回答1:

dev-c是个ide,它的编译器是mingw
一、使用单步调试和观察变量的步骤:
1.
编译通过(ctrl+f9)
2.
设置断点(ctrl+f5)
3.
调试(f8)
4.
增加观察变量(在左边的debug观察窗口右键增加或者f4)
5.
单步调试:f7
6.
结束调试:ctrl+alt+f2
简单来说,它有两种方式,一种是源码debug,即分析源码来找出bug位置,一般使用printf()打印出程序执行每一步的信息,一种是可执行文件debug,需要使用调试器来进行。
1.源码debug。类似于下面的源码,主要通过程序执行时输出的信息,来定位bug出现的位置,然后再修改源码。
例如:
#include
void
f()
{
;
}
int
main(){
#ifdef
_debug
printf("start
main
function!\n");
#endif
void
f();
#ifdef
_debug
printf("leave
main
function
!\n");
#endif
return
0;
}
2.可执行文件调试,windows平台常用的就是vs/vc自带的调试,另外一个就是微软自家开发的调试器windbg。linux平台以gdb为常用。
下面以dev-c++为例:
1)在“工具”-》编译选项-》"编译时加入以下命令"下面的编辑框里加上:
-g3
2)在下面的"在连接器命令行加入以下命令"
下的编辑框上加上:
-g3
3)转到程序页,把gcc行修改为:gcc.exe
-d__debug__,
4)把g++行修改为:
g++.exe
-d__debug__

5)点击确定,重新编译,就能调试了。

回答2:

简单来说,有两种方式,一种是源码debug,即分析源码来找出bug位置,一般使用printf()打印出程序执行每一步的信息,一种是可执行文件debug,需要使用调试器来进行。
1.源码debug。类似于下面的源码,主要通过程序执行时输出的信息,来定位bug出现的位置,然后再修改源码。
例如:
#include
void
f()
{
;
}
int
main(){
#ifdef
_DEBUG
printf("start
main
function!\n");
#endif
void
f();
#ifdef
_DEBUG
printf("leave
main
function
!\n");
#endif
return
0;
}
2.可执行文件调试,windows平台常用的就是vs/vc自带的调试,另外一个就是微软自家开发的调试器windbg。Linux平台以gdb为常用。
下面以dev-C++为例:
1)在“工具”-》编译选项-》"编译时加入以下命令"下面的编辑框里加上:
-g3
2)在下面的"在连接器命令行加入以下命令"
下的编辑框上加上:
-g3
3)转到程序页,把gcc行修改为:gcc.exe
-D__DEBUG__,
4)把g++行修改为:
g++.exe
-D__DEBUG__

5)点击确定,重新编译,就能调试了。