VC memory窗口显示为问号(?),什么原因,能详细解释一下吗?

CuTea 2010-07-01 11:10:25
如题,调试过程中有时候VC memory窗口显示为?,这是什么原因,最好能详细说明一下?
...全文
1235 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiuchengw 2010-12-15
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 qiuchengw 的回复:]

引用 8 楼 cutea 的回复:

引用 7 楼 hankcs 的回复:
引用 6 楼 s373785346 的回复:
野指针~
同意 invalid pointer

即使是指针错了,它指向的地址也应该是本进程的地址空间内的,没错吧?只要是在本进程地址空间内这块数据它应该是可以察看的。

通常即使是野指针,对于这样的错误系统是可以检测到的,在系统停下来的时候还可以dump出……
[/Quote]

哦,要么你的数据也是好的,它就是"?"
再者是把指针类型给强制转换了,比如本来是int * ,你把它转化为了 char*
qiuchengw 2010-12-15
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 cutea 的回复:]

引用 7 楼 hankcs 的回复:
引用 6 楼 s373785346 的回复:
野指针~
同意 invalid pointer

即使是指针错了,它指向的地址也应该是本进程的地址空间内的,没错吧?只要是在本进程地址空间内这块数据它应该是可以察看的。

通常即使是野指针,对于这样的错误系统是可以检测到的,在系统停下来的时候还可以dump出来相应的数据,而遇到问号的时候是没有机会继……
[/Quote]

既然是野指针,就可以随便指向整个内存的任何地方, 可以是本进程,也可以不是本进程.
调试窗口事实上也类似于你在控制台中输出:printf("%d");..%s....等等.只不过现在把这些输出定向到了调试窗口中,实质上都是从一个内存中取出来数据,根据你的指针类型不同,输入不同格式的数据(整形,字符串...)

你这个问题,要么是野指针,要么你的指针是好的,但是它指向的内存值没有初始化,是垃圾数据.
Endoresu 2010-12-15
  • 打赏
  • 举报
回复
我也疑惑这个问号是什么,我最近写的一个程序返回的指针指向这个?的内存单元导致程序运行不正常
是不是这些问号的内存单元是不可访问的
CuTea 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hankcs 的回复:]
引用 6 楼 s373785346 的回复:
野指针~
同意 invalid pointer
[/Quote]
即使是指针错了,它指向的地址也应该是本进程的地址空间内的,没错吧?只要是在本进程地址空间内这块数据它应该是可以察看的。

通常即使是野指针,对于这样的错误系统是可以检测到的,在系统停下来的时候还可以dump出来相应的数据,而遇到问号的时候是没有机会继续的

为什么显示问号,想不明白
见习学术士 2010-07-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xyzhaopeng 的回复:]
应该是这些地址区间不是给你的程序使用的。
[/Quote]
不可见字符
汪宁宇 2010-07-01
  • 打赏
  • 举报
回复
有些是不可读,所以打?
cdsnpeter 2010-07-01
  • 打赏
  • 举报
回复
应该是这些地址区间不是给你的程序使用的。
hankcs 2010-07-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 s373785346 的回复:]
野指针~
[/Quote]同意 invalid pointer
Henry8484 2010-07-01
  • 打赏
  • 举报
回复
野指针~
CuTea 2010-07-01
  • 打赏
  • 举报
回复
前面没说清楚,在vc调试时应该是不能在memory窗口看其它进程地址的


to wangningyu

不可读是什么意思,察看也不行?
CuTea 2010-07-01
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xiaoc1026 的回复:]
引用 1 楼 xyzhaopeng 的回复:
应该是这些地址区间不是给你的程序使用的。

不可见字符
[/Quote]

非也,如果是不可见字符应该可以看其十六进制代码,但它全部显示为问号。

to xyzhaopeng :
这段内存肯定是在本进程的地址空间的。另外来说如果不在本进程空间,如果去察看会引起vialotion

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧