2012-05-10 19 views
10

我正在调试Visual Studio 2010中的C++代码,并希望看到我的数组的内容,比如说Q是17x17。当我插入一个断点并尝试调试时,我只看到变量“Q”。当我将它带到“Watch”屏幕并将其重命名为“Q,17”时,我看到一个级别。如何在Visual Studio 2010中查看二维数组的所有元素?

但我想看到其他维度。我不能写“Q,17,17”。什么是正确的命令?

谢谢你......

回答

13

你不能,至少不能直接。

你可以做的是把&array[0][0]放在内存窗口中,然后调整它的大小,使列数匹配一行array数据。

或者,你可以把array[0],17在监视窗口,然后重复它array[1],17

不是你要找的答案也许,但监视窗口,而相当强大的,只是不能做你想做的事。

+0

谢谢你,这对我来说已经足够了。 –

0

该解决方案只适用于1D阵列。但是,每一行有固定大小(看到第一维度作为排在数学)的二维数组可以如下分配为一维数组:

int ** a = new int * [n]; 
int * b = new int [n*n]; 

a[0] = &b[0]; 
for (int i=1; i<n; i++) 
{ 
    a[i] = a[i-1]+n; 
} 
int count=0; 
for (int i=0; i<n; i++) 
{ 
    for (int j=0; j<n; j++) 
    { 
     a[i][j]= rgen.randInt(-10,10); 
    } 
} 

然后可以使用a如矩阵中的代码和可视化使用说b,100如果你的矩阵是10乘以10。

相关问题