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

目录

[Debug 和 Release 的区别](#Debug 和 Release 的区别)

[F10 --- 逐过程调试 & F11 --- 逐语句调试](#F10 --- 逐过程调试 & F11 --- 逐语句调试)

[F9 --- 新建/切换断点 & F5 --- 开始调试](#F9 --- 新建/切换断点 & F5 --- 开始调试)

[shift + F5 & ctrl + F5](#shift + F5 & ctrl + F5)


Debug 和 Release 的区别

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

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


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

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

只有当 main函数 中有函数调用 时,F10 和 F11 才会有区别

F10遇函数调用时:

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

F11遇函数调用时:

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


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

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

直接打断点:

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

打断点时设置参数:

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

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


shift + F5 & ctrl + F5

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

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

相关推荐
咸咸咸虾3 天前
Microsoft Visual Studio 历史版本与官方安装包链接汇总
ide·microsoft·visual studio
zuiyuewentian4 天前
借助 AI 在 Win11 上搭建 Rocky Linux:用 Visual Studio 直接调试 Linux 服务
linux·运维·visual studio
C++ 老炮儿的技术栈4 天前
Linux 动态库踩坑:明明重新编译了 .so,调用函数返回值却一直不变(libfjrobot.so 版本号异常排查实录)
linux·c语言·网络·c++·visual studio
H.莓飛4 天前
【数据结构】排序总结与规模实测
linux·服务器·开发语言·数据结构·visual studio·1024程序员节
夏虫不可与之言冰6 天前
RMT 与 WS2812 灯带:可寻址 RGB 全彩控制
c语言·c++·单片机·物联网·visual studio
起个名字都难啊6 天前
visual studio C/C++空项目修改为CUDA c++
c++·windows·visual studio
zl_dfq6 天前
Visual Studio 动态链接库(DLL)生成完全指南
visual studio
瑶池酒剑仙6 天前
C++变量初始化五法完全指南:默认/拷贝/直接/列表/值初始化与窄化转换陷阱(青云之志)
c语言·开发语言·数据结构·c++·算法·visual studio
霍霍的袁8 天前
【C++11】左值右值引用与移动语义详细笔记(左值右值、右值引用、移动构造、移动赋值、引用折叠、万能转发)
c++·笔记·学习·visual studio
H.莓飛8 天前
【数据结构】归并与外排序
linux·服务器·c语言·开发语言·数据结构·visual studio