首页 / 知识
关于c ++:如何在Visual Studio调试器中显示动态分配的数组?
2023-04-16 02:31:00
How to display a dynamically allocated array in the Visual Studio debugger?如果您有一个静态分配的数组,Visual Studio调试器可以轻松显示所有数组元素。 但是,如果您有一个动态分配并由指针指向的数组,那么当您单击+以展开它时,它将仅显示该数组的第一个元素。 是否有一种简单的方法来告诉调试器,将这些数据显示为Foo类型和X大小的数组?
是的,简单。
在调试器中写入:
会向你显示内容,就好像它是一个数组。 有两种方法可以查看数组m4x4中的数据:
一种方法是使用Watch窗口(Debug / Windows / Watch)。添加watch =
这会在列表中显示数据:
另一种方法是使用Memory窗口(Debug / Windows / Memory)。指定内存起始地址=
这会在表格中显示数据,这对于二维和三维矩阵更好:
右键单击"内存"窗口以确定二进制数据的可视化方式。选择仅限于整数,浮点数和一些文本编码。 在监视窗口中,在数组名称和要显示的项目数量之后添加逗号。 再访: 我们假设你有一个指针:
那么你可以在下面的Visual Studio调试手表中写下:
将它转换成如下所示的数组,您可以一次查看所有内容。
对于,
加上这个观看
另一种方法是在MSDN中指定。 简而言之,您可以将字符数组显示为几种类型的字符串。如果你有一个数组声明为:
您可以在监视窗口中将其打印为unicode字符串,其中包含以下内容:
有关所有可能的转换,请参阅MSDN页面上的表格,因为有很多不同的转换。许多不同的字符串变体,用于打印数组中各个项目的变体等。
您可以在文档中的此gem中的监视窗口中找到可以使用变量执行的许多操作的列表: 对于变量a,有其他答案中已经提到过的东西,比如
但是格式和大小还有很多其他说明符,例如:
对于MFC阵列(CArray,CStringArray,...) http://www.codeproject.com/Articles/469416/10-More-Visual-Studio-Debugging-Tips-for-Native-De 例如,对于"CArray pArray",请在Watch窗口中添加
看前5个元素。 如果pArray是二维CArray,您可以使用下一个语法查看第二维的任何元素:
我还没有找到一种方法来使用多维数组。但您至少可以(如果您知道所需条目的索引)将监视添加到特定值。只需使用索引运算符即可。 对于名为current的数组,其内部有一个名为Attribs的数组,其中有一个名为Attrib的数组,如果您想要位于第26位,它应该如下所示:
您也可以使用偏移量
将显示ne"next"25个元素。 |
最新内容
相关内容
linux满屏显示命令?
linux满屏显示命令?,工具,系统,服务,电脑,网络,技术,信息,数据,上会,软件,如何显示linux所有命令1、网卡。在linux系统中,ifconfig-a命令是用来显示linux时间命令?
显示linux时间命令?,时间,系统,信息,一致,命令,文件,终端,目录,选项,参数,linuxcp命令并显示拷贝时间在没有带-a参数时,两个文件的时间是不一样linux命令刷新显示?
linux命令刷新显示?,系统,工作,最新,地址,命令,异常,分析,工具,信息,软件,Linux命令1、linux系统常用操作命令如下:ls:全拼list,功能是列出目录的linux显示最多的命令?
linux显示最多的命令?,系统,情况,信息,数据,工具,电脑,状态,时间,分析,命令,在linux系统中,显示/root目录下所有文件的命令是1、ls -l /home/linux显示隐藏命令?
linux显示隐藏命令?,系统,电脑,档案,工具,一致,生产,文件夹,文件,命令,开头,linux隐藏文件夹如何显示出来?1、文件管理器查看隐藏首先,点击任务linux显示错误命令?
linux显示错误命令?,信息,系统,电脑,状态,时间,环境,命令,搜狐,密码,异常,虚拟机里怎么开始linux系统,打startx命令提示错误1、第一种:这个问题linux逐行显示命令?
linux逐行显示命令?,标准,信息,系统,工作,地址,命令,实时,名称,文件,目录,Linux中显示一个文件最后几行的命令是什么?1、tail -n 20 filenamelinux显示时间命令?
linux显示时间命令?,时间,系统,管理,标准,信息,单位,工具,数据,中国,命令,linux必学的60个命令安装和登录命令:login、shutdown、halt、rebootlinux启动显示命令行?
linux启动显示命令行?,系统,密码,终端,状态,首页,情况,基础,电脑,信息,工具,linux,按了ctrl+alt+F1,进入了类似纯命令行的界面,让输入login信linux启动显示命令行?
linux启动显示命令行?,系统,密码,终端,状态,首页,情况,基础,电脑,信息,工具,linux,按了ctrl+alt+F1,进入了类似纯命令行的界面,让输入login信linux显示之前的命令?
linux显示之前的命令?,系统,信息,命令,地址,服务,环境,数据,标准,数字,不了,linux系统查看自己在linux上使用过的前10次命令首先打开Linux直接linux打开显示器命令?
linux打开显示器命令?,信息,工具,系统,环境,发行,实时,数据,设备,命令,文件,Linux文件系统操作命令cat:可以显示文件的内容(经常和more搭配使用