【问题标题】:Using free on structure which contains unintialized pointer在包含未初始化指针的结构上使用 free
【发布时间】:2018-03-25 21:40:24
【问题描述】:

我有一个带有整数和字符指针的结构。我只是为结构分配内存。现在如果尝试释放相同的结构,指针也会被释放?

struct a
{
int b;
char *c
};
main()
{
struct *d = malloc(sizeof(a));
free(d);
}

上面的程序没有内存泄漏?

【问题讨论】:

    标签: c struct free


    【解决方案1】:

    为了发生内存泄漏,必须有分配的东西不能再被引用。由于此处分配的唯一内容是显式释放的内容,因此没有泄漏。

    你在结构中有一个指针这一事实是无关紧要的,因为你从来没有分配任何东西让它指向。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-26
      • 1970-01-01
      • 2017-10-19
      相关资源
      最近更新 更多