首页 > 其他分享 >DEBUG调试

DEBUG调试

时间:2024-06-16 15:31:30浏览次数:12  
标签:窗口 程序 失能 Step DEBUG 断点 调试

Debug调试界面

调试工具栏

  • 进入调试模式后,会显示 Debug 工具栏,包含多个功能按钮:
    • 复位按钮:类似于硬件复位,将程序重置到起始位置。
    • 全速运行(Run):使程序持续运行直到遇到断点或结束。
    • 单步调试(Step Into)逐条语句执行,遇到函数会进入函数内部(快捷键:F11)
    • 单步跳过调试(Step Over)逐条语句执行,但不会进入函数内部,直接执行函数并跳到下一条语句。(快捷键:F10)
    • 单步返回调试(Step Out):执行完当前函数的剩余部分并跳出函数。
    • 运行到光标处(Step Run to Cursor Line):程序运行到光标所在行。(如果有断点,最后会移动到断点处)
    • 设置/失能断点:在当前光标所在行设置或失能断

断点管理

  • 可以在代码的特定行设置断点,以便程序在执行到该行时暂停。
  • 断点可以通过点击行号旁的空白区域设置,或者使用快捷键 F9 进行切换。
  • 断点可以被使能或禁止,也可以删除所有断点

调试窗口

  • 调试过程中,可以使用不同的窗口来观察程序状态:
    • 寄存器窗口:观察寄存器的变化
    • 变量查看窗口:实时监测变量的变化
    • 汇编语言窗口:查看汇编代码
    • 内存查看窗口:查看内存地址的数据
    • 命令输出窗口:显示调试时的数据输出

相关概念补充

失能断点

  • 失能断点(Disable Breakpoint)是调试过程中的一个功能,它允许开发者暂时使某个断点无效,而不是完全删除断点。这样做的好处是,你可以保留断点的位置和设置,但在某些情况下暂时不让它触发程序的暂停。

当断点被失能后,程序在执行到该位置时不会停止,而是继续运行。这在以下情况下非常有用:

  1. 多断点管理:如果你设置了多个断点,但只想在某些特定情况下触发其中一些断点,你可以暂时失能其他断点。
  2. 避免重复调试:在复杂的程序中,可能需要多次经过同一个断点,如果每次都停下来会非常耗时,失能断点可以避免这种情况。
  3. 条件触发:有时候你可能只在满足特定条件时才需要程序在某个位置暂停,失能断点可以让你在不需要时忽略它。

标签:窗口,程序,失能,Step,DEBUG,断点,调试
From: https://blog.csdn.net/tym23081329/article/details/139712389

相关文章

  • UE Puerts 在 Android 的调试方法
    配置流程在JsEnv.Build.cs添加WITH_INSPECTOR编译添加这个宏就开启了全平台调试功能看到这里就知道V8Inspector之前仅在三个平台会编译,现在会在任意平台编译了打包的时候会发现存在编译错误(如果没有就是后续Puerts版本修复了这个问题),接下来修复这个错误(没有IOS......
  • ARM32开发--下载&仿真&调试
    知不足而奋进望远山而前行目录文章目录前言仿真器调试器调试接口调试协议市面烧录调试器调试流程总结前言在嵌入式系统开发的世界里,仿真器和调试器是两个不可或缺的工具,它们帮助开发者跨越从代码编写到硬件运行的鸿沟。特别是在ARM架构的微处理器或微控制器上进......
  • 【安装笔记-20240613-Linux-在 OpenWrt 的 LuCI界面支持命令行调试】
    安装笔记-系列文章目录安装笔记-20240613-Linux-在OpenWrt的LuCI界面支持命令行调试文章目录安装笔记-系列文章目录安装笔记-20240613-Linux-在OpenWrt的LuCI界面支持命令行调试前言一、软件介绍名称:ttyd主页官方介绍特点二、安装步骤测试版本:openwrt-23.05.3......
  • 【pycharm调试模式异常】can‘t open file ‘C:\\Program‘: [Errno 2] No such fil
    错误系统:wendows10pycharm版本:pycharm专业版和社区版都有对应问题2023.1和2023.2都有同样问题python版本:3.11官网问题地址上面只是我出问题的环境,不知道其他环境或者版本有没有同样的问题现象:执行debug,程序启动后立即退出,错误信息:can’topenfile‘C:\Progra......
  • Modbus转Profinet网关连接ABB变频器Modbus通讯调试
    一、前景:在工业自动化领域,Modbus协议和Profinet协议是两种常见的通讯协议,而ABB变频器作为一种常用的变频控制设备,其通讯调试对于系统稳定运行至关重要。二、优势:Modbus协议转Profinet协议网关能够实现不同协议之间的无缝对接和通信,为工业自动化系统的互联提供了便利。通过网关的......
  • go 语言调试工具:dlv 简单使用
     1.    Delve介绍      Delve(通常简写为dlv)是一个为Go语言设计的调试器,它提供了深入代码内部的洞察力和控制力,帮助开发者更好地理解代码的行为,高效地定位和修复问题。      使用dlv进行调试,需要关闭编译器的内联、优化,不可用于生成环境:        ......
  • pdf.js打开自带的debug工具
    pdf.js自带有部分功能debug的工具,可以不用再源码里面,直接再url路径里面通过设置打开要在pdf.js中传入自带的debug功能,需要在url的后面通过#号跟功能的id即可,例如下面开启所有debug功能,那么就在url后面添加#pdfbug=all即可下面这个图是pdf.js的wiki上面所写的包含了debug的功能i......
  • SpringBoot集成devtools实现热部署调试
    SpringBoot集成devtools实现热部署调试简述参考多篇网上文章终于实现热部署,中间出现过更改的文件已加载,但是并未自动重启的情况。由于判断不出哪些操作时多余的,记录了所有修改项操作步骤1.pom文件中增加依赖<dependency><groupId>org.springframework.b......
  • 【ARM Coresight Debug 系列 -- ARMv8/v9 Watchpoint 软件实现地址监控详细介绍】
    请阅读【嵌入式开发学习必备专栏】文章目录ARMv8/v9WatchpointexceptionsWatchpoint配置信息读取ExecutionconditionsWatchpointdataaddresscomparisonsSizeofthedataaccessWatchpoint软件配置流程WatchpointType使用介绍WT,Bit[20]:WatchpointType......
  • 如何调试 "内容安全策略 (CSP) 脚本源代码";
    我试图在我的NextJS应用程序中阻止不受信任的脚本标记。我添加了"内容安全策略"安全标头,特别是"src-script"指令。但是我收到了一个错误,基本上是说有一些未知的脚本主机(除了列出的那些)违反了该指令。Chrome浏览器并没有提供帮助,因为它不知道是哪个脚本违反了这一指令。......