codeblocks怎样查看形参数组的值

时间:2023-02-07 18:19:52
如下面的例子:

#include "stdio.h"
void f1(int a[5]);
int main(void)
{
    int a[5];
    f1(a);
    return 0;
}
void f1(int a[5])
{
    int i;
    for(i=0;i<5;i++)
        a[i]=i;
}

调试时,单步进入f1()函数后,在watch窗口输入::a后,无法查看数组a中的内容,但是可以一个一个的查看,例如在watch窗口里输入a[0]、a[1]等。对于较大的数组时,一个一个的输入查看不太方便,有其它快捷的办法吗? codeblocks怎样查看形参数组的值

3 个解决方案

#1


作为形参这个类型会退化成指针,调试时也仅仅把它当做一个指针而已
VS也仅能查看第一个值

#2


因为此时a就是一个指针,所以只能看它的值(一个地址)
可以看它指向的内容,打开Memory窗口,地址输入a即可
不过只能整型数据能看清,浮点的就算了

#3


数组作为参数传递会退化为指针,f1参数实际是int*,是指针而不是数组,f1中没法知道数组大小,自然也不会按数组方式显示

#1


作为形参这个类型会退化成指针,调试时也仅仅把它当做一个指针而已
VS也仅能查看第一个值

#2


因为此时a就是一个指针,所以只能看它的值(一个地址)
可以看它指向的内容,打开Memory窗口,地址输入a即可
不过只能整型数据能看清,浮点的就算了

#3


数组作为参数传递会退化为指针,f1参数实际是int*,是指针而不是数组,f1中没法知道数组大小,自然也不会按数组方式显示