Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何调试包含210个以上元素的字符数组_C_Arrays_Visual Studio_Watch_Locals - Fatal编程技术网

C 如何调试包含210个以上元素的字符数组

C 如何调试包含210个以上元素的字符数组,c,arrays,visual-studio,watch,locals,C,Arrays,Visual Studio,Watch,Locals,我正在使用Visual Studio Express 2013 for Windows Desktop,希望查看变量的值 这看起来很简单:要么打开“Locals”窗口并检查值,要么将其添加到“Watch”窗口,即可读取值 确实如此,但我的变量是一个字符数组(typedef char T_BufCommandLine[32768];),包含210多个字符,我只看到前210个字符。在那之后,有三个点(“…”),只是提到阵列尚未完成 我知道我可以扩展这个变量的值,但是结果不是很可读,复制其中的一部分是

我正在使用Visual Studio Express 2013 for Windows Desktop,希望查看变量的值

这看起来很简单:要么打开“Locals”窗口并检查值,要么将其添加到“Watch”窗口,即可读取值

确实如此,但我的变量是一个字符数组(
typedef char T_BufCommandLine[32768];
),包含210多个字符,我只看到前210个字符。在那之后,有三个点(“…”),只是提到阵列尚未完成

我知道我可以扩展这个变量的值,但是结果不是很可读,复制其中的一部分是完全不可能的


所以我的问题是:有人知道我如何将包含210多个字符的字符数组的值可视化为一个字符串,而不使用“…”?

在调试器的断点上,将鼠标悬停在变量上,然后单击“looking glass”图标旁边的向下箭头;选择“文本可视化工具”

或者,使用内存窗口:


一个简单的技巧是将您想要的元素复制到一个单独的变量(或分配一个指向该元素的指针),并在分配给snoop它的值之后立即添加一个断点。

如果您想继续使用监视窗口,您只需显式指定起始地址即可。毕竟,它只是一个普通的旧数组。调试器知道如何执行指针算法。要查看前210个元素之外的值,只需执行如下操作:
T\u BufCommandLine+210500


您也可以使用即时窗口,但需要准确地告诉它数组的长度。类似于:
?T_BufCommandLine[0],32768
将给您带来大量转储。

标准方法是
put()
it.)对不起,我无法抗拒。不,我不知道MSVC的方法,别介意我,我现在是一个巨魔,爬回我的石头下面。试着把它保存到一个文件中,然后用matlab可视化它?我想使用这个选项,第一个
0x00
会停止可视化工具。@LPs-当然。如果您想要原始字节,请使用内存窗口。非常感谢,我从未听说过“文本可视化器”。这确实解决了我的问题。