假设我有一个函数
int myfunction(char *s)
在该函数中,对s
指向的字符串进行操作,返回
值为错误码。
假设传递的指针已经指向malloc()
内存。在函数顶部释放此内存是我的责任(开发库),还是库用户不知道此函数将调用 malloc()
或相关并设置 s
指向那里?
最佳答案
通常的契约(Contract)是执行malloc
的人是执行free
的人。
还要考虑到指向的数据可能一开始就没有被malloc
。可以在堆栈上
关于c - 分配给参数指针的空闲内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26159667/