gpt4 book ai didi

c - 返回前释放内存

转载 作者:太空宇宙 更新时间:2023-11-04 01:49:44 25 4
gpt4 key购买 nike

<分区>

假设我有以下程序

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

char *returnSomething()
{
char *myString;
myString = malloc(sizeof(char) * 50);

strcpy(myString,"hello");

free(myString);
return myString;
}

int main(int argc, char const *argv[])
{

char *myString = returnSomething();
printf("%s",myString);

return 0;
}

为什么当我在返回之前释放它时它会成功打印“hello”?我认为它不会打印任何东西,因为我释放了内存然后返回了字符串。我以为我总是必须在打印后在 main 中释放它。

这只是我的 mac 编译器不错吗?

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