(MSVC-2019) 有没有办法在 debug(autos) 屏幕中查看使用 malloc 生成的数组元素?

(MSVC-2019) Is there a way to see the array's elements made with malloc in the debug(autos) screen?

我最近学习了如何使用 fscanf_s,在修改 fscanf_s 的同时,我编写了一个代码来读取文件并将其保存到数组中。 (文件包含123 12 41 234 5 12 45 1 5 764 232

首先我编写了一段代码来测试我的 While 循环是否正确

void arr_calc(FILE*f, ~~) {
    int i = 0, ~~;
    ...
    rewind(f);
    int arr[10];
    while (fscanf_s(f, "%d", &arr[i++]) != EOF);
}

当我检查调试屏幕(autos)时,arr 显示如下

我可以看到 arr 持有什么,但是当我将 int arr[10] 更改为 malloc 以制作这样的可变大小数组时

void arr_calc(FILE*f, ~~) {
    int i = 0, * arr, ~~;
    ...
    rewind(f);
    arr = (int*)malloc((count) * sizeof(int));
    while (fscanf_s(f, "%d", &arr[i++]) != EOF);
}

我不知道 arr 拿着什么。 - 它只显示第一个值

我认为这与我在使用 malloc.

时使用 arr 的指针有关

我的问题是:有没有办法在使用 malloc(或 realloc)时在调试自动中看到 arr 中的元素?

如果说错了请指正,谢谢

这是正常的,autos window 无法指定 malloc 类型,它应该与您的 arr.

的明显定义大小一起使用

相反,正如社区成员所说,使用 Watch Window,设置 arr,10 以获得您想要的。然后它将用输入大小解析数组。