在C语言中,动态分配的数组需要手动释放内存,以避免内存泄漏。在for循环中释放动态分配的数组,可以按照以下步骤进行:
int* arr = (int*)malloc(n * sizeof(int));
free(arr);
完整的示例代码如下所示:
#include <stdio.h>
#include <stdlib.h>
int main() {
int n = 5;
int* arr = (int*)malloc(n * sizeof(int));
// 使用for循环对数组进行操作
for (int i = 0; i < n; i++) {
arr[i] = i;
printf("%d ", arr[i]);
}
// 释放动态分配的数组内存空间
free(arr);
return 0;
}
以上代码中,我们使用malloc函数动态分配了一个包含5个整型元素的数组。在for循环中,我们对数组进行了操作,并打印了每个元素的值。最后,在程序结束前,我们使用free函数释放了动态分配的数组内存空间。
需要注意的是,释放内存后,应将指针设置为NULL,以避免出现野指针的问题。例如,在释放内存后,可以使用以下代码将指针设置为NULL:
arr = NULL;
这样,在后续的代码中,可以通过检查指针是否为NULL来判断内存是否已被释放。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云