c++ - e`的值在windbg中是什么意思
问题描述
我正在使用 windbg 分析故障转储,对于 unsigned long long 类型的变量之一,在本地我可以看到它的值是“0x002a002e`002a0000”。e前后的值是什么意思。还有 e(acute) 本身是什么意思?
解决方案
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 "*.*"
推荐阅读
- c# - 无法使用 AcquireTokenAsync 函数获取 Power BI 令牌
- scala - 为什么在 Spark GraphX 中执行 Pregel 时出现 TypeMismatch 错误?
- python - css 更改不会反映我在 localhost 上的项目
- java - 比较字谜字符串时输出错误
- python - 从列表中删除 UTF-8 字符
- ios - ARKit – 是否可以在 ARSession 暂停时添加 SCNNode?
- typescript - 类型参数不可分配给“字符串”类型的参数
- c# - 将动态对象类型转换为 C# 中传入参数的类类型
- plotly - plotly 默认使用哪个端口?
- docker - 如何使用 Docker Compose 而不在每次进行更改时重新构建镜像?