在调试 Linux 应用程序时,我发现了一个具有可疑值 0x7c7c7c7c 的指针。该特定值是否表示任何内容?
(我问是因为我从我的 MSVC 时代知道在调试版本中,像 0xcdcdcdcd 或 0xdddddddd 这样的值将被存储到未初始化、释放或其他无效的堆 block 中。有些人使用像 0xdeadbeef 或 0xcafebabe 这样的魔法值未初始化的内存。我猜 libc 或其他地方的某些东西使用 0x7c7c7c7c 作为魔法值,但我找不到它的文档。)
最佳答案
我不认识那个神奇的数字,Wikipedia 也不认识。 .我猜想您的程序(或您正在使用的库中)中的某些代码正在使用 memset()
并点击您的指针。您是否在代码库中对字符串“0x7c”进行了不区分大小写的 grep?
关于c++ - 指针值 0x7c7c7c7c 的特殊含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/359553/