当我们编写大型c++程序时,每次调试程序可能需要很久才能运行到错误位置。所以,我们可以直接运行而不进行调试,当程序崩溃时选在系统调试器进行调试,则能快速找到错误位置。
Windows操作系统有一个默认调试器设置,使程序出现崩溃时,自动调用这个调试器进行调试。这个设置在windows的注册表中。
对于32位操作系统:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/AeDebug/Debugger。
对于64位操作系统:HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/Windows NT/CurrentVersion/AeDebug/Debugger。
在这个注册表键中,有两个重要的值:
1、Auto值 : 0表示出现崩溃弹出对话框,让用户选择调试器 1表示自动弹出默认的调试器。
2、Debugger值,对于windows自带的Dr.Watson该值为“ DRWTSN32 -p %ld -e %ld -g”,对于 WinDBG该值为“WinDbg的安装目录\windbg.exe" -p %ld -e %ld -g”对于Visual Studio该值为"C:\WINDOWS\system32\vsjitdebugger.exe" -p %ld -e %ld"
c++程序如何快速调试找到错误位置
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...