首页 > 解决方案 > e`的值在windbg中是什么意思

问题描述

我正在使用 windbg 分析故障转储,对于 unsigned long long 类型的变量之一,在本地我可以看到它的值是“0x002a002e`002a0000”。e前后的值是什么意思。还有 e(acute) 本身是什么意思?

在此处输入图像描述

标签: c++debuggingwindbgsize-t

解决方案


MASM 编号和运算符中描述了该格式。就是这样e,就像a十六进制数的一部分。为了便于阅读,一个 64 位十六进制数被重音符号分隔为两个 32 位部分。如符号扩展的定义中所定义,使用重音可能会产生更多含义。

尽管如此,该值002a002e002a0000看起来与 UTF16 string 非常相似*.*。所以也许你在某个地方有缓冲区溢出。

0:000> .dvalloc 1000
Allocated 1000 bytes starting at 000001d6`4a4c0000
0:000> eq 000001d6`4a4c0000 002a002e002a0000
0:000> dq 000001d6`4a4c0000 L1
000001d6`4a4c0000  002a002e`002a0000
0:000> du 000001d6`4a4c0000 + 2
000001d6`4a4c0002  "*.*"

推荐阅读