调试是一个程序员最基本的技能,其重要性不言自明。不会调试的程序员就意味着他即使会一门语言,却不能编制出好的软件。本文就本人在开发过程中常用的调试技巧作下简单呢介绍,希望对大家有所帮助,能力超群者请绕道。

  1、单步调试(F10)

  在Debug状态下,按下F10,逐行进行调试。

  2、逐句调试(F11)

  在调试状态下,按下F11,会逐句调试,遇到函数会进入函数内部调试。

  3、跳到当前光标处(Ctrl+F10)

  我经常看到有些初级程序员,为了到达目标代码位置,在程序运行前就早早设定了断点,然后反复按F10/F11,直至到达目标代码处。如果程序员真正关心的是目标代码处而不是之前的每一步,这时候再逐步调试就会占用太多的时间且不是明智之举,这时,应该利用“跳到当前光标处”这个功能。

  先把光标定位在目标代码位置,然后Ctrl+F10,程序会直接跳到该行代码位置停下。

  4、条件中断

  在某些场景下,比如循环中,程序员需要知道循环的情况,但是因为循环次数过大,逐句调试显然不是明智的选择,这时可以选择“条件中断”。

  顾名思义,条件中断就是满足特定预设条件后作出的中断响应。具体使用方法如下:

  首先在断点位置处右键,在弹出窗口中选择Condition

  

  这时在弹出的对话框中设置你需要的中断条件,比如我们希望变量paginatedDinners的容量大小10的时候就中断。

  

  或者希望某一变量发生改变时就触发断点,这时可以选择“Has Changed”的勾选。使用条件中断,将避免繁琐的手动操作,大量减少工作量和提高工作效率。

  5、记录到达断点次数

  当第N次满足条件时才触发中断,就是常说的“记录到达断点次数”功能。可以通过右击断点,在弹出的菜单中选择"Hit count..."菜单命令实现。

  

  这时系统弹出一个对话框,它允许你指定:

  (1)当满足条件,而且进入断点的累计次数等于N时,断点命中一次。

  (2)当满足条件,而且进入断点的累计次数是N的倍数时,断点命中一次。

  (3)当满足条件,而且进入断点的累计次数大于N时,每次命中断点。

  

  今天就到这里,下次继续。。。

  

【工具】VS2010常用调试技巧(1)的更多相关文章

  1. java与.net比较学习系列(1) 开发环境和常用调试技巧

    最近因为公司项目要由.net平台转到java平台的原因,之前一直用.net的我不得不开始学习java了,刚开始听到说要转java的时候很抗拒,因为我想专注在.net平台上,不过这样也并不完全是坏事,通 ...

  2. iOS开发之Xcode常用调试技巧总结

    转载自:iOS开发之Xcode常用调试技巧总结 最近在面试,面试过程中问到了一些Xcode常用的调试技巧问题.平常开发过程中用的还挺顺手的,但你要突然让我说,确实一脸懵逼.Debug的技巧很多,比如最 ...

  3. WebApi-路由机制 Visual Studio 2015中的常用调试技巧分享

    WebApi-路由机制   一.WebApi路由机制是什么? 路由机制通俗点来说:其实就是WebApi框架将用户在浏览器中输入的Url地址和路由表中的路由进行匹配,并根据最终匹配的路由去寻找并匹配相应 ...

  4. Java常用调试技巧(转)

    调试不仅可以查找到应用程序缺陷所在,还可以解决缺陷.对于Java程序员来说,他们不仅要学会如何在Eclipse里面开发像样的程序,更需要学会如何调试程序.本文介绍了Java程序员必知的10个调试技巧, ...

  5. Xcode 常用调试技巧总结

    NSLog,po命令和普通断点调试相信每个iOS开发者都会,这里就不作介绍了. 一.Memory Graph Xcode8新增:Memory Graph解决闭包引用循环问题 有很多叹号说明就有问题了. ...

  6. Visual Studio 2015中的常用调试技巧分享

    .NET 技术交流群:337901356 欢迎您的加入! 为什么要学习调试? 调试(Debug)是作为一个程序员必须要学会的东西,学会调试可以极大的提高开发效率,排错时间,很多人不喜欢调试,但我认为这 ...

  7. java与.net比较学习系列开发环境和常用调试技巧常用操作快捷键

    调试         F5 F11 调试运行   CTRL+F5 暂无 非调试运行   F6 不适用 编译整个解决方案   SHIFT+F6 不适用 编译当前选择的工程   SHIFT+F5 CTRL ...

  8. VS2010断点调试技巧

    设置断点:在如下图中的红色圆点处设置断点,红色圆点表示已经在这行设置断点.快捷键F9.   启动调试:按F5或者点击左边红框中的按钮.右边框是开始执行(不调试)Ctrl+F5. 调试工具栏:下面是工具 ...

  9. Android开发工具——Android Studio调试技巧

    .调试的两种方式 到目前,调试的相关基础我们已经介绍完了,但是不少同学对Android Studio中这两个按钮感到困惑:Debug和Attach process. 这里我们就简单介绍一下这两者的区别 ...

随机推荐

  1. Python多线程爬虫爬取电影天堂资源

    最近花些时间学习了一下Python,并写了一个多线程的爬虫程序来获取电影天堂上资源的迅雷下载地址,代码已经上传到GitHub上了,需要的同学可以自行下载.刚开始学习python希望可以获得宝贵的意见. ...

  2. C# 程序中嵌入百度地图

    本例是对WinForm中使用百度地图的简要介绍.百度地图目前支持Android开发,IOS开发,Web开发,服务接口,具体可以参照'百度地图开放平台'. [动态加载百度地图]涉及到的知识点: WebB ...

  3. 值得注意的ibatis动态sql语法格式

    一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...

  4. es6小白学习笔记(一)

    1.let和const命令 1.es6新增了let和const命令,与var用法类似,但它声明的变量只在let所在的代码块内有效(块级作用域,es5只有全局和函数作用域) { let a = 1; v ...

  5. Mysql - 触发器/视图

    触发器在之前的项目中, 应用的着实不多, 没有办法的时候, 才会去用这个. 因为这个东西在后期并不怎么好维护, 也容易造成紊乱. 我最近的项目中, 由于数据库设计(别人设计的)原因, 导致一些最简单功 ...

  6. Linux设备文件简介(转载)

    Linux 中的设备有2种类型:字符设备(无缓冲且只能顺序存取).块设备(有缓冲且可以随机存取).每个字符设备和块设备都必须有主.次设备号,主设备号相同的设 备是同类设备(使用同一个驱动程序).这些设 ...

  7. OpenGL: 纹理采样 texture sample

    Sampler (GLSL) Sampler通常是在Fragment shader(片元着色器)内定义的,这是一个uniform类型的变量,即处理不同的片元时这个变量是一致不变的.一个sampler和 ...

  8. intellij idea 13&14 插件推荐及快速上手建议

    IntelliJIDEA插件安装 首页 > blog Tags : intellij IDEA插件安装 更新日期: 2015-04-29 IntelliJ IDEA插件下载地址: http:// ...

  9. 不该活着的SqlHelper和DBHelper

    前言: 还记得刚学ADO.NET的情景么? 还记得当年是怎么从ADO.NET被忽悠到用SqlHelper的么? 话说从入门到走上工作岗位那些年,我们就一直被纯纯地教导或引导,ADO.NET太原始,得封 ...

  10. 判断一个对象是jQuery对象还是DOM对象

    今天调试一段代码的时候,看到其中一个变量,想知道它到底是jquery对象还是dom对象. 虽然直接console出这个对象,看它的内部可以判断出来.但是我想有没有什么更方便的方法呢. 后来我想到了一个 ...