举例来说,我创建了一个指针newPtr,并使用了malloc(一些大小),然后又使用相同的指针再次使用了malloc(一些大小)。怎么了?然后,我是否要创建与第一个相同大小的第二个内存块? newPtr是否指向相同的地址?

例:

int *newPtr;
newPtr = malloc(10 * sizeof(int));
newPtr = malloc(10 * sizeof(int));

最佳答案

您的程序将发生内存泄漏。 newPtr的第一个值将丢失,并且您将无法对其进行free



是。您正在分配与第一个对象不同的第二个对象。



否。对象是不同的,因此它们的地址是不同的。

10-04 23:46