当前位置: 首页 > news >正文

C语言 ——— 实用调试技巧(Visual Studio)

目录

Debug 和 Release 的区别

F10 --- 逐过程调试 & F11 --- 逐语句调试

F9 --- 新建/切换断点 & F5 --- 开始调试 

shift + F5 & ctrl + F5 


Debug 和 Release 的区别

Debug:通常为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序

Release:为发布版本,它进行了各种优化,使得程序载代码大小和运行速度上都是最优的,以便于用户很好的使用


F10 --- 逐过程调试 & F11 --- 逐语句调试

main函数 内部的条件语句或者判断语句,使用 F10 或者 F11 都没有区别

只有当 main函数 中有函数调用时,F10F11 才会有区别

F10遇函数调用时: 

当调试箭头指向函数调用时按下F10,会直接走过函数,并完成函数中的代码

F11遇函数调用时:

当调试箭头指向函数调用时按下F11,会进入函数内部,能观察到函数内部的细节


F9 --- 新建/切换断点 & F5 --- 开始调试 

F5F9 通常是配合使用,先使用 F9 打断点,再使用 F5 调试

直接打断点:

这是一个打印二维数组的每一位的代码,使用 F9 将断点打到 printf函数 的地方,那么按下 F5 时调试箭头就会直接指向断点处,且断点处以上的代码已经执行完毕 

打断点时设置参数: 

打上断点后 -> 右击鼠标 -> 点击条件

断点设置为 i == 2 ,此时 F5 运行时,会直接运行到当i == 2时的逻辑,且断点前的代码已经运行完毕


shift + F5 & ctrl + F5 

 shift + F5:当你在调试程序时,按下 shift + F5 就会终止调试

 ctrl + F5:开始执行,不调试,直接执行完代码,且不会调试

http://www.lryc.cn/news/400182.html

相关文章:

  • 音频demo:使用faad2将AAC数据解码出PCM数据
  • 力扣 hot100 -- 多维动态规划
  • [misc]-流量包-wireshark-icmp
  • 探索性数据分析:使用Python与Pandas库实现数据洞察
  • 枚举的高阶用法之枚举里写方法以及注入spring的bean
  • 游戏开发面试题2
  • 华为机试题-单车道汽车通行时间-Java
  • 6-5,web3浏览器链接区块链(react+区块链实战)
  • C# 多态性
  • Visual Studio 安装程序无法执行修复或更新
  • C#与PLC通信——如何设置电脑IP地址
  • Milvus 核心设计(1) ---- 数据一致性的等级及使用场景
  • EasyCVR视频技术:城市电力抢险的“千里眼”,助力抢险可视化
  • 【Wamp】局域网设备访问WampServer | 使用域名访问Wamp | Wamp配置HTTPS
  • 采用自动微分进行模型的训练
  • k8s怎么配置secret呢?
  • 算法篇 滑动窗口 leetcode 长度最小的子数组
  • 数据库作业d8
  • 前后端数据交互设计到的跨域问题
  • 非洲猪瘟监测设备的作用是什么?
  • 移动硬盘损坏无法读取?专业恢复策略全解析
  • 神经网络以及简单的神经网络模型实现
  • java中压缩文件的解析方式(解析文件)
  • 巧用 VScode 网页版 IDE 搭建个人笔记知识库!
  • Jupyter Lab 使用
  • MyBatis where标签内嵌foreach标签查询报错‘缺失右括号‘或‘命令未正确结束‘
  • 重生奇迹MU 群战王牌
  • SpinalHDL之VHDL 和 Verilog 生成
  • c语言中的字符串函数
  • [AI 大模型] 百度 文心一言