在C语言中,realloc 函数用于扩大或缩小之前分配的内存块

2025-05-18ASPCMS社区 - fjmyhfvclm

在C语言中,realloc 函数用于扩大或缩小之前分配的内存块。它是动态内存管理的重要工具,允许你在运行时调整内存块的大小。下面是如何使用 realloc 函数来扩大内存块的详细说明和示例。

realloc 函数

功能:重新分配内存块的大小。

参数:

ptr:指向之前分配的内存块的指针。如果 ptr 是 NULL,realloc 的行为类似于 malloc。

size:新的内存块的大小(以字节为单位)。

返回值:成功时返回指向新内存块的指针,失败时返回 NULL。

使用 realloc 扩大内存块

c

#include <stdio.h>

#include <stdlib.h>

int main() {

int *ptr;

int n = 5;

// 分配内存

ptr = (int *)malloc(n * sizeof(int));

if (ptr == NULL) {

printf("Memory allocation failed.\n");

return 1;

}

// 初始化分配的内存

for (int i = 0; i < n; i++) {

ptr[i] = i + 1;

}

// 打印初始分配的内存内容

printf("Initial array: ");

for (int i = 0; i < n; i++) {

printf("%d ", ptr[i]);

}

printf("\n");

// 扩大内存块到

全部评论