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

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

4

1 回答 1

8

t如果您有一个由 指向的数组p,如下所示:

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

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

(double[5]) *p
于 2020-04-15T01:56:52.020 回答