gpt4 book ai didi

c - 按地址返回

转载 作者:行者123 更新时间:2023-11-30 21:14:52 25 4
gpt4 key购买 nike

int * foo()
{
int b=8;
int * temp=&b;
return temp;
}

我有几个问题,

  1. *p 位于内存布局的哪一部分。
  2. 我将局部变量地址复制到临时指针而不分配内存。但即便如此,它也存储了局部变量的地址,这怎么可能呢?
  3. 该程序对我来说工作得很好,当我取消引用它时(局部变量肯定不会在那里)我为什么仍然得到该值。

真的什么都不懂。谁能详细解释我上述所有疑问。

最佳答案

In which part of memory layout does *p present.

您的程序中没有p

I am copying the local variable address to the temp pointer without allocating the memory. But even then it stores the address of the local variable, how it is possible?.

局部变量有一个地址。您可以返回该地址。

The program works fine for me, when i dereference it (the local variable definitely will not be there) how come i get the value still.

有错误的代码会做出你意想不到的奇怪事情。修复错误,谜团就会消失。

关于c - 按地址返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32202074/

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