gpt4 book ai didi

c - 辨别指针和内存分配

转载 作者:太空宇宙 更新时间:2023-11-04 06:04:43 27 4
gpt4 key购买 nike

p*p**p 的内存分配(如果有的话)是什么,当我写 char **p = NULL ?

最佳答案

p 的大小取决于它的类型。 *p**p 的大小(和 ***p, ********** p 等)是指针的大小:通常为 4 或 8 个字节,具体取决于您使用的是 32 位系统还是 64 位系统。

当您编写 char **p = NULL 时,您不会分配任何超出 char **p 所能提供的额外内存。您只是用一个值初始化变量在内存中的位置,而不是让它保持未初始化状态。

至于它们在哪里,这取决于上下文。如果这些是函数内的局部变量,则在调用函数时将在堆栈上分配它们。如果它们是全局变量,它们将在程序的数据段中被赋予位置。如果它们是 struct 的成员,则取决于您在哪里声明结构类型的变量。

关于c - 辨别指针和内存分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12577121/

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