如何在不同的语言、环境和 IDE 中放置程序断点。经常看到问题,不能调试程序,因为程序很大,体积很大。Loop on 10000000。这样的情况可以被捕获,比如发生错误的时候,我有i = 357489,并且不清楚为什么会发生异常,那么我们这样做,比如这样:
for (i=0;i<10000000;i++) {
if (i==357489) DebugBreak();
// код
}
但是DebugBreak
- windows 的功能。其他环境如何设置断点?
如何在不同的语言、环境和 IDE 中放置程序断点。经常看到问题,不能调试程序,因为程序很大,体积很大。Loop on 10000000。这样的情况可以被捕获,比如发生错误的时候,我有i = 357489,并且不清楚为什么会发生异常,那么我们这样做,比如这样:
for (i=0;i<10000000;i++) {
if (i==357489) DebugBreak();
// код
}
但是DebugBreak
- windows 的功能。其他环境如何设置断点?
在C++中 有设置断点的选项
DebugBreak();
- windows 环境__builtin_trap()
- linux环境raise(SIGTRAP)
- 使用 POSIX posix信号__EMIT__(0xCC)
或__emit__(0xcc);
- 某些环境支持代码注入__asm { int 3;}
或__asm { db 0xCC;}
汇编插入对于其他环境
和#
System.Diagnostics.Debugger.Break();
javascript
debugger;
爪哇
try {throw new TurnOnDebuggerException();}catch(TurnOnDebugger td) {/*Nothing*/ }
帕斯卡
inline($CC);
vbscript 视觉基础
stop