gpt4 book ai didi

c - "malloc in local function, free memory in main"可以吗?如何?

转载 作者:太空狗 更新时间:2023-10-29 17:01:43 25 4
gpt4 key购买 nike

<分区>

我在书中了解到,如果我需要从函数返回指针,我会使用 malloc() 并从堆中获取内存。我想知道如何free() 增加函数之后分配的内存。

可以按照我在以下代码中所做的来释放内存吗?如果不正确,函数后释放内存的正确方法是什么?

int *Add_them_up (int *x, int *y)
{
int *p = (int *) malloc(sizeof (int));
*p = *x + *y;
return p;
}


int main ()
{
int c = 3;
int d = 4;
int *presult = NULL;
presult = Add_them_up (&c, &d);
printf ("the result of adding is:%d\n", *presult);
free (presult);
return 0;
}

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