有一个代码:
#include <stdlib.h>
struct Data {
int size;
char *bin;
};
int main() {
struct Data *data = (struct Data *) malloc(sizeof(struct Data));
data->bin = (char *) malloc(3);
data->size = 3;
free(data);
}
它会释放free(data)指向的内存data->bin吗?
不,它
free()只会破坏传递给它的指针,它不会触及其中的任何东西。