[QT] 断点调试

news2024/10/4 10:21:05

目录

一 设置断点

二 调试窗口信息

2.1 默认窗口

2.2 详细窗口属性

三 调试方法和技巧


一 设置断点

在QtCreator中我们有两种方式添加断点。

  • 用鼠标直接点击代码编辑窗口中的某一行
  • 按下F9添加/取消断点(操作的是当前鼠标光标所在的代码行)

二 调试窗口信息

2.1 默认窗口

  • 这里列出几个默认的窗口
  1. 红色圆点表示断点,黄色箭头表示当前程序运行位置。
  2. stack: 堆栈表示当前函数之间的调用关系,比如位于哪个函数体中。
  3. Locals: 本地Local区域:当前堆栈中的属性值
  4. Expressions:监视窗口:动态监视某个变量的值,即使它们不在当前作用域内。
  5. Beakpoints : 断点信息窗口

2.2 详细窗口属性

红色加粗窗口是重点关注也是常用的窗口。

  • stack: 显示当前的函数调用堆栈,帮助你了解程序执行的路径,以及它是如何到达当前执行点的。你可以点击堆栈中的任何一行来跳转到相应的源代码位置。
  • Beakpoints : 列出了程序中设置的所有断点,允许你管理(添加、删除、启用/禁用)断点,并可以为断点设置条件,比如只有当某个变量满足特定条件时才触发断点。
  • Threads列出程序中的所有线程,并允许你选择要调试的线程。
  • Modules: 当前调用的模块信息,其实可以理解为动态库/静态库的信息(比如模块名称、路径、基地址、大小)
  • Source Files:当前包含的所有源码文件。
  • Locals: 当前作用域中所有局部变量以及类成员属性及其对应的值。这里值得注意的是,它并不会显示当前断点处程序上下文的所有变量属性(上下文: 当前程序运行处的所有状态信息,包括局部变量,外部可调用的全局变量,执行线程,调用堆栈等)。
  • Expressions:监视窗口:动态监视某个变量的值,即使它们不在当前作用域内。允许你监视特定表达式或变量的值。
  • Registers: 对于底层调试,显示CPU寄存器的当前值,这对于理解程序的低级执行状态很有用,尤其是在进行硬件相关的调试时。(这里要注意如果打开了这个窗口但是GDB配置有误,那么调试就会比终止提示TheThe GDB process terminated)
  • Debugger Log: 调试日志。
  • Editor(代码编辑器):当前正在编辑的窗口 比如.cpp
  • Automatically Hide View Title Bars: 是否隐藏掉这些调试窗口的标题栏

三 调试方法和技巧

方法:

F5开始断点调试
F9增加/删除断点
F10单步调试 遇到函数不会进入
F11单步进入 会进入函数,任何函数都会单步进入。
shift+F11单步退出 退出当前函数

技巧:

  • 当F5启动断点调试后,继续使用F5直接跳到下一个断点处
  • 可以使用鼠标拖动当前代码编辑器中的黄色箭头来移动当前的调试位置。
  • 可以用鼠标右键框选中变量,然后用左键拖动到监视器窗口中来监视该变量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1669897.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python深度学习基于Tensorflow(2)Tensorflow基础

文章目录 基本操作数据转换和数据生成操作形状数据提取和保存变量Numpy和Tensorflow的比较 计算图静态图动态图自动图 自动微分使用Tensorflow 实现回归 首先是Tensorflow的安装,由于可能会出现版本冲突,最好在conda环境安装,同时&#xff0c…

iOS 面试题总结(可能是最全的!!!)

如有错误 请及时在评论中指出 文章将不定期更新 1. objc_msgForward是干什么的,如果直接调用会发生什么? 作用:这个函数是IMP类型(方法实现的内存地址也就是函数指针),用于消息转发,当向一个对…

【Linux】多线程相关第一篇:从进程谈起理解线程概念

文章目录 为什么需要线程初步认识Linux线程Linux操作系统的线程为什么要这么设计进程、线程关系梳理理解线程是CPU调度的基本单位简单认识多执行流如何划分代码 为什么需要线程 线程和进程的关系密不可分。 操作系统教材对于进程、线程的概念是这样描述的: 进程是…

Python-VBA函数之旅-super函数

目录 一、super函数的常见应用场景 二、super函数使用注意事项 三、如何用好super函数? 1、super函数: 1-1、Python: 1-2、VBA: 2、推荐阅读: 个人主页: https://myelsa1024.blog.csdn.net/ 一、su…

JS解密之新js加密实战(二)

前言 上次发了一篇关于新加密的,只解了前边两层,这中间家里各种事情因素影响,没有继续进一步研究,今天百忙之中抽空发布第二篇,关于其中的一小段加密片段,我认为分割成多个小片段是更容易被理解的。逻辑相…

【SRC实战】修改赠送金额支付漏洞

挖个洞先 https://mp.weixin.qq.com/s/NQKJQF81XpG8815EfgvgKw “ 以下漏洞均为实验靶场,如有雷同,纯属巧合 ” 01 — 漏洞证明 “ 充值赠送金额能否修改? ” 1、充值30元赠送1.9元礼包,充值100元赠送7元礼包,充值…

买卖股票的最佳时机 II(LeetCode 122)

❤️❤️❤️ 欢迎来到我的博客。希望您能在这里找到既有价值又有趣的内容,和我一起探索、学习和成长。欢迎评论区畅所欲言、享受知识的乐趣! 推荐:数据分析螺丝钉的首页 格物致知 终身学习 期待您的关注 导航: LeetCode解锁100…

FANUC机器人单轴零点标定时提示无法执行零点标定,由于重力补偿已启用,所有机器人轴的脉冲计数必须有效

FANUC机器人单轴零点标定时提示无法执行零点标定,由于重力补偿已启用,所有机器人轴的脉冲计数必须有效 首先,机器人由于长时间断电未使用,6个轴的编码器数据全部丢失,上电后报警SRVO-062, 有关SRVO-062故障报警的相关内容可参考以下链接: FANUC机器人SRVO-062报警原因分…

通过集成式 PLM Services for SIMULIA 实现协作

在快速发展的产品开发世界中,无缝和高效的管理解决方案已成为必需品。在这些解决方案中,PLM 服务正变得越来越普及,这要归功于它们的能力。这些服务提供了一种管理产品生命周期的集成方法,从概念开始,到设计和制造&…

Pyhton专题学习资料包,Python从入门到精通全套学习资料[30G]

资源概览 百本Python学习书籍大礼包百本前端学习书籍大礼包微专业-数据挖掘分析之Python篇小甲鱼零基础入门学习Python(全96集) 资源获取 🧑‍💻【Pyhton专题资料】【30G】 百本Python书籍## 百本前端书籍 微专业-数据挖掘分析之Python篇 预备课【先…

Docker下Open WebUI,Ollama的安装实践

提示一下Open WebUI与ollama的关系。后端的同学可以理解为Open WebUI等于是个Navicat,Ollama就是具体的数据库实例。 官方安装文档: 🏡 Home | Open WebUI Open WebUI官网文档翻译: 注意: 使用Docker安装Open WebU…

有趣的css - 打字机动画效果

大家好,我是 Just,这里是「设计师工作日常」,今天分享的是使用 css 实现好玩的单行打字机效果,和我一起看看吧。 《有趣的css》系列最新实例通过公众号「设计师工作日常」发布。 目录 整体效果核心代码html 代码css 部分代码 完整…

成员函数构造函数析构函数

文章目录 类的6个默认成员函数构造函数概述定义特性 析构函数概述特性 类的6个默认成员函数 空类: 如果一个类里面什么都没有写,我们称之为空类 class Date {};空类真的什么都没有吗? 实际上并非如此,编译器会自动生成6个默认成…

樊春海院士/姚广保课题组2024年博士后/助理研究员火热招募!

尊敬的读者们,我们很高兴地向您介绍一个激动人心的机会——上海交通大学张江高等研究院正在进行博士后和科研助理的招聘,这是一个与顶尖科学家共事、参与前沿科学研究的绝佳机会。 工作地点位于风景优美、充满活力的上海市浦东新区,这里是中国…

FENDI CLUB精酿啤酒馆与传统啤酒销售模式的不同

精酿啤酒火了,国产品牌精酿也在迅速崛起,为精酿啤酒这一小众品类发展加足了马力。与此同时,精酿酒吧、精酿小酒馆也开始出现了增长。这标志着中国精酿啤酒市场的快速发展和国产品牌的崭新局面。 FENDI CLUB精酿啤酒已经在不少地方开始积极开…

CDGA|数据治理实战案例:从数据收集到治理,再到价值应用

在当今信息爆炸的时代,数据治理已成为企业提升核心竞争力、实现数字化转型的关键一环。本文将通过一个实战案例,详细剖析数据治理的全过程,从数据收集到治理,再到价值应用,为读者提供有益的参考和启示。 数据收集&…

港中深「户外自重构蜗牛机器人集群」登Nature子刊!

在科幻电影《超能陆战队》中,我们见证了一种由成千上万个微小磁性单元组成的机器人通过磁力相互连接,形成各种复杂的三维结构。香港中文大学(深圳)林天麟教授团队致力于将这一科幻转化为现实,近年来开发了一系列自由形…

APP反抓包 - 客户端证书验证

一,校验的原理 下图为HTTP协议的请求过程:传输过程中都是明文数据 下图为HTTPS协议的请求过程: 注意:公钥加密的数据只能通过对应的私钥才能解密,就算是进行加密的公钥也不能进行解密。 上述的请求过程看似复杂,实际就是两部分: 通过公钥与私钥同步对称密钥使用对…

安科瑞工业IT产品及解决方案—电源不接地,设备外壳接地【监测系统对地绝缘电阻】

低压配电系统分类及接地保护方案 国际电工委员会(iec)对各接地方式供电系统的规定规定:(低压:交流1000V以下) 低压配电接地、接零系统分为IT、TT、TN三种基本形式。TN分为TN-C,TN-S,TN-C-S三种…

网络编程UDP

目录 1.什么是网络编程 1.1发送端和接收端 1.2请求和响应 1.3客户端和服务端 1.4常见的客户端服务端模型 2.Socket套接字 2.1Socket概念 2.2三种Socket套接字分类 3.Java数据报套接字通信模型(UDP) 4.Socket编程注意事项 5.UDP数据报套接字编程…