gpt4 book ai didi

c++ - 内存地址0x0是否可用?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:55:16 27 4
gpt4 key购买 nike

我想知道...如果你做一个新的,预订开始的地址是 0x0 怎么办?我想这是不可能的,但为什么呢?新运营商是否为此做好了准备?第一个字节的那部分不可用吗?它总是在操作系统启动时保留?

谢谢!

最佳答案

空指针 不一定是地址 0x0,因此架构可能会选择另一个地址来表示空指针,您可以得到0x0 来自 new 作为有效地址。 (我不认为有人这样做,顺便说一句,它会破坏大量 memset 调用背后的逻辑,而且无论如何都更难实现)。

空指针 是由操作系统 保留还是由C++ 实现 未指定,但普通 永远不会返回一个空指针,无论它的地址是什么(nothrow new 是一个不同的野兽)。所以,回答你的问题:

Is memory address 0x0 usable?

也许,这取决于特定的实现/架构。

关于c++ - 内存地址0x0是否可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14408062/

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