gpt4 book ai didi

c++ - 0xDEADBEEF 相当于 64 位开发?

转载 作者:IT老高 更新时间:2023-10-28 14:01:34 32 4
gpt4 key购买 nike

用于 32 位系统的 C++ 开发(无论是 Linux,Mac OS 或 window ,PowerPC或 x86)我已经初始化了指针否则将是未定义的(例如,他们不能立即得到一个合适的值)像这样:

int *pInt = reinterpret_cast<int *>(0xDEADBEEF);

(为了节省输入和成为 DRY 右侧通常会保持不变,例如BAD_PTR。)

如果 pInt 在获得正确值之前被取消引用,那么它会在大多数系统上立即崩溃(而不是当某些内存被覆盖或消失时,会在很久以后崩溃进入一个很长的循环)。

当然,行为取决于底层硬件(从奇数中获取 4 字节整数来自用户进程的地址 0xDEADBEEF 可能是完美的有效),但是对于所有的崩溃都是 100% 可靠的到目前为止我开发的系统(Mac OS 68xxx,Mac OSPowerPC, Linux Redhat Pentium, Windows GUI Pentium, Windows控制台奔腾)。例如在 PowerPC 上它是非法的(总线fault) 从一个奇数地址获取一个 4 字节整数。

这在 64 位系统上有什么好的值(value)?

最佳答案

0xBADC0FFEE0DDF00D

关于c++ - 0xDEADBEEF 相当于 64 位开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1258051/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com