调用realloc()与调用free()相同,然后调用malloc()

时间:2019-06-29 15:47:31

标签: c malloc free allocation realloc

我想知道在指针上调用realloc是否与先调用free然后再调用具有新大小的malloc相同。以下两段代码是否等效?

1:

float * pointer;
pointer = (float *)malloc(Size * sizeof(float));

/* STUFF */

pointer = (float *) realloc(pointer, NewSize * sizeof(float));

2:

float * pointer;
pointer = (float *)malloc(Size * sizeof(float));

/* STUFF */

free(pointer);
pointer = (float *) malloc(NewSize * sizeof(float));

而且,如果我在免费通话后调用realloc会发生什么? 如果我在未引用的指针上调用realloc?

谢谢

0 个答案:

没有答案