是否可以在Visual Studio调试器中查看数组?QuickWatch只显示数组的第一个元素。
当前回答
如果你有一个大数组,只想看到数组的一个分段,你可以把这个输入到观察窗口;
ptr+100,10
显示从ptr[100]开始的10个元素的列表。注意显示的数组下标将从[0]开始,所以你必须记住ptr[0]实际上是ptr[100], ptr[1]是ptr[101]等等。
其他回答
我使用Visual Studio的ArrayDebugView插件(http://arraydebugview.sourceforge.net/)。
这似乎是一个长期死亡的项目(但一个我正在寻找继续自己),但插件仍然为我在VS2010中为c++和c#工作得很漂亮。
它有一些怪癖(制表符顺序,模态对话框,没有关闭按钮),但能够在图形中绘制数组的内容远远弥补了这一点。
编辑2014年7月:我终于构建了一个新的Visual Studio扩展来取代ArrayebugView的功能。它可以在VIsual Studio Gallery中获得,搜索ArrayPlotter或访问http://visualstudiogallery.msdn.microsoft.com/2fde2c3c-5b83-4d2a-a71e-5fdd83ce6b96?SRC=Home
您正在尝试查看动态分配内存的数组吗?如果没有,您可以通过将c++和c#数组放入调试器的监视窗口中来查看它,当您通过鼠标左键单击监视窗口中的小(+)展开数组时,可以看到它的内容。
如果它是指向动态分配数组的指针,要查看指针的N个内容,请在调试器的监视窗口中键入“指针,N”。注意,N必须是整数,否则调试器将给您一个错误,表示它无法访问内容。然后,左键单击显示内容的小(+)图标。
将鼠标光标悬停在数组的名称上,然后悬停在出现的小(+)图标上。
如果你有一个大数组,只想看到数组的一个分段,你可以把这个输入到观察窗口;
ptr+100,10
显示从ptr[100]开始的10个元素的列表。注意显示的数组下标将从[0]开始,所以你必须记住ptr[0]实际上是ptr[100], ptr[1]是ptr[101]等等。
你可以在c++中尝试这个小技巧。取给出数组的表达式,然后附加一个逗号和要查看的元素数。展开该值将显示元素0-(N-1),其中N是在逗号后添加的数字。
例如,如果数组是pArray,则在监视窗口中键入pArray,10。
推荐文章
- 为什么我的程序不能在Windows 7下用法语编译?
- 为什么Android工作室说“等待调试器”如果我不调试?
- 如何在解决方案中找到未使用的NuGet包?
- 如何获取变量的类型?
- 查看Visual Studio 2010+中的所有断点
- 什么是奇怪的重复模板模式(CRTP)?
- 连接两个向量的最佳方法是什么?
- 在c++中,是通过值传递更好,还是通过引用到const传递更好?
- 在STL中deque到底是什么?
- 使用Java在原语数组中查找最大/最小值
- Windows上最好的免费c++分析器是什么?
- 对象作为React子对象无效。如果要呈现子元素的集合,请使用数组
- 越界访问数组有多危险?
- 如何自动转换强类型枚举为int?
- 在一个类中使用具有成员函数的泛型std::function对象