如何在 visual studio code 中调试时扩展数组

问题描述 投票:0回答:2

这是我的代码,它是一个简单的排列代码块:

void arrange(char c[], int N, int start)
{
    if (start == N)
    {
        print(c, N);
        return;
    }
    for (int i = start; i < N; i++)
    {
        swap(c[start], c[i]);
        arrange(c, N, i + 1);
        swap(c[start], c[i]);
    }
}

int main(int argc, char const *argv[])
{
    char c[] = { 'A','B','C' };
    int N = (sizeof(c) / sizeof(char));
    arrange(c, N, 0);
    return 0;
}

它没有给出我期望的输出,我想调试这段代码。 我想观察输入数组中的字符交换。但是当我 debug,输入数组无法展开

c++ debugging visual-studio-code watch
2个回答
18
投票

如果你有一个由

t
指向的数组
p
,像这样:

double t[5] = {0,1,2,4.5,2.3};
double *p = t;

如果你重铸它,你可以在调试器上观看

p
。 只需在手表窗口上写下:

(double[5]) *p

0
投票

arrange()
中添加一个喙点时,c 数组会显示它的地址
0x7fffffffdd15
,如下所示:

要在左下角解决这个问题,您应该看到 WATCH 部分。
像这样添加

现在在手表部分你应该看到你的阵列是这样的:

© www.soinside.com 2019 - 2024. All rights reserved.