第十二章 C语言调试_查看和修改变量的值
设置了断点,就可以观察程序的运行情况了,其中很重要的一点就是查看相关变量的值,这足以发现大部分逻辑错误。
将下面的代码复制到源文件中:
在第7行和第12行插入断点。运行到第一个断点时,在局部变量
窗口可以看到各个变量的值:
可以看到,未经初始化的局部变量和数组的值都是垃圾值,是随机的,没有意义。双击变量的值,可以进行修改。
点击“运行”按钮或按F5
键,程序会运行到下一个断点位置,在局部变量
窗口可以看到各个值的变化:
更加快捷的方式
除了在窗口中查看变量,还有一种更加便捷的方法:在调试模式下,把鼠标移动到要查看的变量的上方,即可看他它的值。如下图所示:
如果是数组、指针、结构体等还可以展开,如下图所示:
这种查看变量的方式在实际开发中使用很多。
添加监视
如果你希望长时间观测某个变量,还可以将该变量添加到监视窗口。在要监视的变量处单击鼠标右键,弹出如下菜单:
选择“添加监视”,在VS下方的监视
窗口就可以看到当前变量:
这样,每次变量的值被改变都会反映到该窗口中,无需再将鼠标移动到变量上方查看其值。尤其是当程序稍大时,往往需要同时观测多个变量的值,添加监视的方式就会显得非常方便。
第十二章 C语言调试_查看和修改变量的值相关推荐
- 第十二章 C语言调试_调试的概念以及调试器的选择
所谓调试(Dubug),就是跟踪程序的运行过程,从而发现程序的逻辑错误(思路错误),或者隐藏的缺陷(Bug). 在调试的过程中,我们可以监控程序的每一个细节,包括变量的值.函数的调用过程.内存中数据. ...
- 第十二章 C语言调试_assert断言函数
在我们的实际开发过程之中,常常会出现一些隐藏得很深的BUG,或者是一些概率性发生的BUG,通常这些BUG在我们调试的过程中不会出现很明显的问题,但是如果我们将其发布,在用户的各种运行环境下,这些程序可 ...
- 《深入浅出数据分析》第十二章——R语言lattice数据包
文章目录 R语言 一.lattice数据包 二.jitter() R语言 这章比较重要的点就是lattice数据包. 然后就着重写一下这里. 一.lattice数据包 lattice包是一个非常强大的 ...
- 【维生素C语言】第十二章 - C语言自定义类型讲解(联合体、枚举、联合体)
原标题:自定义类型讲解?楼下保安大爷直呼内行!![C语言] 前言: 本章将对C语言自定义类型进行讲解,前期我们讲过结构体,这章将会把前面结构体还没讲完的知识继续补充. 一.结构体(struct) 结构 ...
- 第三十二章 XML基础知识概念
文章目录 第三十二章 XML基础知识概念 attribute CDATA区域 comment content model default namespace DOM DTD(文档类型定义) eleme ...
- 第十二章 使用嵌入式SQL(三)
文章目录 第十二章 使用嵌入式SQL(三) 主机变量 主机变量示例 用列号下标的主机变量 `NULL`和未定义的主机变量 主机变量的有效性 主机变量和程序块 第十二章 使用嵌入式SQL(三) 主机变量 ...
- 第十二章_网络搭建及训练
文章目录 第十二章 网络搭建及训练 CNN训练注意事项 第十二章 TensorFlow.pytorch和caffe介绍 12.1 TensorFlow 12.1.1 TensorFlow是什么? 12 ...
- stm32 文件系统dma大小_「正点原子NANO STM32F103开发板资料连载」第二十二章 DMA 实验...
1)实验平台:[正点原子] NANO STM32F103 开发板 2)摘自<正点原子STM32 F1 开发指南(NANO 板-HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 ...
- 简述sd卡2.0协议_【正点原子FPGA连载】第十二章SD卡读写TXT文本实验-领航者 ZYNQ 之嵌入式开发指南...
1)实验平台:正点原子领航者ZYNQ开发板 2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761 3)全套实验源码+手册+视频下 ...
最新文章
- java对话框背景图片插入_关于java编程窗体加背景图片的问题
- Redis分布式锁的正确实现方式(Java版)
- AI公开课:19.04.18俞益洲—深睿医疗CS《计算机视觉的应用与落地》课堂笔记以及个人感悟
- Photoshop 保存PNG格式交错和不交错有差别
- python格式字符_python格式字符
- linux系统认不到设备,linux中/dev/找不到设备
- .Net Attribute特性
- 基于蚁群算法求解求解TSP问题(JAVA)
- 一个伤心人的帖和一群搞笑的跟帖
- 华为FusionSphere虚拟化解决方案介绍
- java 图片清晰度_Java 图片处理——如何生成高清晰度而占有磁盘小的缩略图
- 美团Robust热修复工具使用记录
- 使用OpenCV库函数将图片合成视频
- 2020-06-03 Javase 常用api
- 深度解析vivoX20四大创新突破!小米Mix2望尘莫及,雷军慌了
- Cannot find module ‘XXX‘的解决办法
- 如何提取CAD图纸里的标注?CAD文件标注提取方法分享
- 运用MATLAB探索上证指数(1990-2022)基本特征:走势、损益、回报率、自相关
- IDEA 2017.2输入法候选框不跟随光标的问题 Windows 7 旗舰版
- 5.20下周黄金行情走势分析及开盘独家交易策略
热门文章
- 百度Apollo源码学习之Bazel编译介绍
- 聊聊在Vue项目中使用Decorator装饰器
- android刷ios,安卓刷ios方法教程【详解】
- 使用C#实现邮箱验证
- Rstudio中关于R script的操作
- 手把手系列之二——手把手教你做春卷
- 网站服务器搭建百青藤,百青藤服务器搭建
- 元宇宙乘风而来,人工智能落地如何“去虚向实”?
- 在Google搜索结果显示原始链接
- 【-Flutter/Dart 语法补遗-】 sync* 和 async* 、yield 和yield* 、async 和 await