c - 是否需要释放返回的 localtime() 结构?

标签 c memory-management function-prototypes

struct tm *localtime(const time_t *timep);

我检查了 man localtime 但没有说明我是否有责任在使用后清理它。

事实上我对返回指针的函数有很多类似的疑问,你如何确定它应该被释放?

最佳答案

此信息应该在手册页中 - 我的 localtime 手册页说:

The return value points to a statically allocated struct...

不应将静态分配的对象传递给 free(),所以这就是您的答案 - 不,您应该释放 localtime( )

在一般情况下,唯一的判断方法是查阅相关功能的文档或实现。

关于c - 是否需要释放返回的 localtime() 结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6210880/

相关文章:

c - 使用 c 指针转置矩阵,内存访问错误

c# - .Net 中的内存泄漏

c++ - 根据需求在 C++ 中定义函数原型(prototype)

c - 声明和原型(prototype)的区别

c - 如何从文件中读取日期到结构中?

c++ - 链接器错误 : gcc

vb.net - vb.net 应用程序出现 OutOfMemoryException

ruby - Class#allocate 及其用途

c++ - 如何捕获构造函数的原型(prototype)?

c - 如果语句没有被捕获