如何展开 Visual c + + 调试器监视窗口中的数组指针

如何展开 Visual c + + 调试器监视窗口中的数组指针

概要

Visual c + + 6.0 版开始就现在可以展开数组指向在 Visual c + + 调试器监视窗口中查看所有数组元素。此功能未记录。在监视窗口中键入...

从 Visual c + + 6.0 版开始就现在可以展开数组指向在 Visual c + + 调试器监视窗口中查看所有数组元素。此功能未记录。

在监视窗口中键入一个表达式,该表达式计算为后跟一个逗号和数组中的元素数的指针。

更多信息

作为控制台应用程序生成下面的代码的调试版本。 // Filename
main.cpp // No compile option needed #include...

  1. 作为控制台应用程序生成下面的代码的调试版本。
  2. 2.
       //
    Filename main.cpp
  3. 3.
       //
    No compile option needed
  4. 4.
  5. 5.
       #include <iostream.h>
  6. 6.
  7. 7.
       void main(void)
  8. 8.
       {
  9. 9.
         int * p;
  10. char* ptr = "Hello World";
  11. p = new int [10];
  12. for(int i=0; i<=9; i++){*(p+i) = i+1;}
  13. cout << i <<endl;
  14. }
  1. 进入并单步执行该代码使用调试器,并在最后一行代码处停止。
  2. 在监视或 Quickwatch 窗口中的变量 pptr 添加。您将看到变量旁边有一个 + 符号。
  3. 单击 + 符号以展开该变量。您将看到它指向的数组的第一个元素。
  4. 现在,在监视窗口中键入 p10ptr11
  5. 单击 + 符号以展开该变量。现在,您看到它指向的数组的所有元素。

如果您想要查看特定范围的元素,然后输入第一个元素来指定在后面加上格式说明符,如前面步骤中所述的起始索引的地址。对于示例 (p+3)8 显示元素 p [3..10] 和 (ptr+3)10 显示元素 ptr [3..12]。遗憾的是,在监视窗口中开始的索引将 [0] 的实际对应于在此示例中的索引 3。您必须记住偏移量 3 具有要添加到每个显示的索引,以获取数组元素的实际索引。

时间: 2024-11-07 00:03:31

如何展开 Visual c + + 调试器监视窗口中的数组指针的相关文章

在Visual Studio调试器中显示Unreal的数据类型的值

转自:http://blog.csdn.NET/witton/article/details/5977766 在Unreal引擎中大量使用了自定义的数据类型如:FName,FString,TArray等等,对于这些自定义的数据类型,我们无法直接查看到这些数据的值,但是我们可以编写VS中的autoexp.dat文件中的脚本,来达到我们需要在调试器中显示的方式. 由于在VS2003中的autoexp.dat脚本不支持表达式,而无法全部满足我们对Unreal引擎中自定义的数据类型的调试显示.经过研究,

Visual Studio 2017 调试器的工作进程(msvsmon.exe)意外退出 调试将终止

原文:Visual Studio 2017 调试器的工作进程(msvsmon.exe)意外退出 调试将终止 开发环境: Windows 10 in Parallels Desktop Visual Studio 15.6 场景还原: 使用 Visual Studio 15.6 (即 Visual Studio 2017) 新建 ASP.NET Core MVC 项目,启动调试,提示: 调试器的工作进程(msvsmon.exe)意外退出.调试将终止 其实这个问题曾经多次遇到过,但是都没做记录,导致

Visual Studio 2003“无法启动调试 没有正确安装调试器“请修复调试器的解决办法

在用VS2003做项目的时候,经常调试程序,但是有时候回出现如下问题"无法启动调试,没有正确安装调试器,请运行安装程序或修复调试器".第一次碰到还以为是运气不好,就重新用vs2003安装程序重新修复了这个工具,可以使用了.但是运行了一段时间又出现了如上这种问题,郁闷了我很久.因为修复一下这个工具要花费很多时间的,于是从网上找了资料,把问题给解决了. 主要原因:大部分问题都是因为,mdm被损坏了导致的. 解决办法: 先查看本地服务(在运行处输入:services.msc 命令启动)是否有

Visual Studio调试的10个技巧

本篇体验Visual Studio的10个调试技巧,包括: 1.插入断点和断点管理2.查看变量信息3.逐语句F11,逐过程F10,跳出Shift+F114.查看堆栈信息5.设置下一条执行语句6.调试时修改局部变量并继续调试7.线程管理8.为断点设置条件9.使用命令窗口测试方法10.变量的历史记录 有这样的一个Person类: public class Person { public string Name { get; set; } public int Age { get; set; } pu

新手必备!11个强大的 Visual Studio 调试技巧

简介 调试是软件开发周期中很重要的一部分.它具有挑战性,同时也很让人疑惑和烦恼.总的来说,对于稍大一点的程序,调试是不可避免的.最近几年,调试工具的发展让很多调试任务变的越来越简单和省时. 这篇文章总结了可能节省你大量时间的十个visual studio的调试技巧和方法. 1 悬停鼠标查看表达式值 调试是很有挑战性的.比如在函数内逐步运行可以看出哪里出错,查看堆栈信息可以知道函数被谁调用等等... 但是无论哪种情况下,查看表达式和局部变量的值都是很麻烦的(把表达式和局部变量放到watch窗口里)

Lua编辑调试器 BabeLua

Lua编辑器 Lua调试器 LuaIDE LuaEdit LuaEditor BabeLua入门 BabeLua简介 BabeLua是一款基于VS2012/2013(简称VS)的免费开源的Lua集成开发环境,在Lua编辑和调试方面,具有如下功能和特性: ●Lua语法高亮 ●语法检查 ●自动补全 ●一键注释 ●格式化代码 ●自定义代码折叠 ●工程管理 ●快速搜索和跳转 ●文件大纲 ●注入宿主程序内对Lua脚本进行调试 ●设置断点观察变量值 ●查看堆栈信息 BabeLua可以调试哪些程序 已经通过测

调试器不能连接到STM32的问题与解决办法

很多人都碰到过调试器不能连接到STM32的问题,不管是IAR的J-Link还是Keil的ULink,或者是ST的ST-Link.出现这个问题时,调试软件会提示不能建立与Cortex-M3的连接,或提示不能下载程序,或提示找不到要调试的设备等.       这样的问题都是发生在调试那些可以在CPU不干预的时候自动运行的模块.或在调试低功耗模式的程序的时候.所谓“可以在CPU不干预的时候自动运行的模块”包括:DMA.定时器.连续转换模式下的ADC.看门狗等模块. ------------------

使用Visual Studio调试用户模式进程(Debugging a User-Mode Process Using Visual Studio)

由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:[email protected] Visual Studio版本:Visual Studio 2015企业版,中文环境. MSDN原文:https://msdn.microsoft.com/zh-cn/library/windows/hardware/hh406273(v=vs.85).aspx 在Visual Studio里,你可以使用Windows用户模式调试器 (Windows User Mode Debugger),把一个正在运行的

用Visual Studio调试Windows和驱动程序

由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:[email protected] MSDN原文:https://msdn.microsoft.com/zh-cn/library/windows/hardware/hh406281(v=vs.85).aspx 从Windows Driver Kit (WDK) 8开始,驱动开发环境和Windows调试器都集成到Visual Studio里了.在这个集成环境里,大多数你需要开发驱动的工具:编写代码.编译.打包.测试.调试.发布,都在Visua