gpt4 book ai didi

c - malloc() 是否有最大返回值?

转载 作者:太空狗 更新时间:2023-10-29 14:53:15 25 4
gpt4 key购买 nike

malloc()返回的虚拟内存指针的size_t值是否有上限?

我想知道我是否可以安全地设置 64 位指针的最高有效位以指示这不是指针而是文字整数。

最佳答案

malloc 返回一个 void* 而不是一个整数。将指针转换为整数并不是给你(虚拟内存)地址,而是一些必须遵守 C 语言标准中定义的语义的值(0 表示空指针,加法和减法与指针运算有关) ,仅此而已。

除此之外,您不得对指针转换为整数的值做出任何假设。事实上,C 实现很可能有权使用高位中的一些内部信息标记非空指针转换为整数。

关于c - malloc() 是否有最大返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30257571/

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