C++中使用断点写调试方法_第1页
C++中使用断点写调试方法_第2页
C++中使用断点写调试方法_第3页
C++中使用断点写调试方法_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C+中使用断点写调试方法IW I C/C+ code :f9 -设置/取消断点f10 -单步执行f11 -比f10的步幅小,f10在函数的调用时,直接跳过,在f11下,会进入函数体!f5 -执行到下一个断点!了解调试,首先要知道"断点”这个概念.断点就是程序运行中可能会中断的地方,方便开发者在程序运行的过程中查看程序当前的运行状态,比如变量的值,函数的返回值等等.究竟怎么使用断点呢?1.F9在当前光标所在的行下断点,如果当前行已经有断点,则取消断点F5调试状态运行程序,程序执行到有断点的地方会停下来F10单步执行程序CTRL+F10运行到光标所在行F11和F10的区别是,如果当前执行

2、语句是函数调用,则会进入函数里面SHIFT+F11跳出当前所在函数特别说明:a. 有的地方不能下断点.比如空行,基本类型定义语句(不初始化),等等非执行语句.比如int i; /此行不能下断点int j=0;这里可以下CStringstr;/这里可以下intk = Max(i,j);这里可以下b. 不是所有断点都会(断).比如下断点的语句在程序里面没有被执行.c. 此外,ALT+F9还可以下条件断点,不过这个不常用,有兴趣的可以自己研究:)2.如何调试Release版的程序?有些程序在debug下运行的很好,但在release下却总是失败,默认情况下release是不能调试的.怎么解决呢?其实

3、"debug"和"release"都只是一个代号而已,各自对应一组不同的编译选项在release的默认设置下,ALT+F7 ,调出工程设置对话框,切换到link选项卡,勾选"Generate debug info",然 后再切换到 C/C+选项卡,在"Optimizations"里面选"Disable(Debug)",在下面的"Debug info"里面选 "Program Database for Edit and Continue".然后点OK保存设置,重新编译程序,下断点即可.3.上面两点已经能应付很多种情况了,但是有时候即使在debug下也不能下断点,我以前也曾经遇到过这种问题,一个调了层的dll,就是不能下断点.其实还除了上面的方法,还有一种最底层的实现技术:使用汇编.细心的人可能会发现,有时候在调试状态下当程序岀现异常的时候,光标会指向汇编代码,而这个代码就是int 3,这其实是一个中断.在你的代码的任意地方加上_asmint 3;用debug编译,然后直接运行程序.当程序执行到上述代码的时候,就会岀现一个框,告诉你说

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论