c++ - 在 Windbg 中转储值和填充

标签 c++ c debugging windbg

我正在 Windbg 中转储一个类(通过 dt),对于 bool 成员,我看到了值 fffffffffffffff8(bin: .. .1111111111111111000)。 是否为有效值(包括填充)?

PS:我正在调查一个可能是内存损坏的转储,所以 .. 不能确定。
PS2:我的 bool 值在 pointersize_t 之间。编译为发布。

最佳答案

这不是一个有效的 bool 值 -- bool 应该只显示为 01。由于您看到的是 0xf8,因此内存未初始化或被覆盖。 (请注意,出于某种原因,WinDbg 只会读取一个字节,然后将其符号扩展为 64 位。)

关于c++ - 在 Windbg 中转储值和填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7874549/

相关文章:

c++ - 如何在 VC++ 2010 中使用 GetLastError()

c++ - 语义向二进制表达式 ('double' 和 'double' 发出无效操作数)

c++ - 查找数组中的最大值

android - 使用C程序发送视频文件保存在Android手机上

c++ - 从 int* 到 int [-fpermissive] 的无效转换

c - 传递 argv 语句的不同答案

c++ - IPPROTO_SCTP、SCTP_STATUS 的 getsockopt "Invalid argument"

debugging - 在 Thunderbird 的 userChrome.js 中调试日志记录

debugging - IntelliJ IDEA TypeScript/Webpack 调试仅适用于 JavaScript 断点

node.js - 为什么我使用 nodemon 和 ts-node 时 Node 检查器不启动?