gpt4 book ai didi

c++ - 可以realloc Array,那为什么要用指针呢?

转载 作者:太空狗 更新时间:2023-10-29 23:26:12 25 4
gpt4 key购买 nike

这是我面临的工作安置面试。他们问我们是否可以realloc Array,我说可以。然后他们问 - 那么为什么我们需要指针,因为大多数人给出的理由是它浪费了内存空间。我无法给出满意的答案。如果有人能给出满意的答案,我将不胜感激。请提及任何可能与上述陈述相矛盾的情况。

谢谢。

最佳答案

您只能重新分配动态分配的数组。如果它是静态分配的,则无法 [安全] 重新分配。*

指针保存数据在内存中的地址。它们可以使用 C++ 中的 new/delete 运算符和 C 中的 malloc/free 动态分配、释放和重新分配。

我强烈建议您阅读 The C Programming Language由 Kernighan 和 Ritchie 编写,还有像 C++ From the Ground Up 这样的扎实的 C++ 文本赫伯特·席尔特 (Herbert Schildt)。

使用动态内存、指针、偏移量等都是使用这两种语言的基础。不知道它们是如何工作的,以及它们存在的原因可能是潜在雇主拒绝您的一个可能原因。

*编译器不应让您重新分配任何已静态分配的内容,但如果这样做,则行为未定义

关于c++ - 可以realloc Array,那为什么要用指针呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/201940/

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