【问题标题】:How to expand an array while debugging in visual studio code在 Visual Studio 代码中调试时如何扩展数组
【发布时间】:2019-03-14 06:09:12
【问题描述】:

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

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;
}

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

【问题讨论】:

  • 在监视窗口中使用c,10 或任何你想显示的条目。
  • 另外,对于简单的chars,内存窗口会准确显示您想要的内容。
  • 请注意,函数arrange 中的c 不是数组。它只是一个指向char 的指针。

标签: c++ debugging visual-studio-code watch


【解决方案1】:

如果你有一个t 指向的数组p,像这样:

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

如果你重铸它,你可以在调试器上观看p。 只需在监视窗口上写:

(double[5]) *p

【讨论】:

    猜你喜欢
    • 2012-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2022-08-02
    相关资源
    最近更新 更多