c - 如何从 C 中的 char 数组中释放内存

标签 c

我像这样创建了一个字符数组:

char arr[3] = "bo";

如何释放与名为“arr”的数组关联的内存?

最佳答案

局部变量会在函数结束时自动释放,不需要你自己释放。您只能释放动态分配的内存(例如使用 malloc),因为它是在堆上分配的:

char *arr = malloc(3 * sizeof(char));
strcpy(arr, "bo");
// ...
free(arr);

关于动态内存分配的更多信息:http://en.wikipedia.org/wiki/C_dynamic_memory_allocation

关于c - 如何从 C 中的 char 数组中释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21513666/

相关文章:

c - 即使使用 malloc 和 strcpy 时,多个节点值也都指向相同的值

c - TensorFlow C API 日志记录设置

c - 向 gcc 添加通行证?

C 分级程序 : Not Returning 'C' for Grading Program

vsnprintf 能否返回大于 1 的负值?

objective-c - C 数组与 Obj-C 数组

c - 函数指针的内存分配

c - 读取数据并使用 scanf 跳过括号

c - 如何使用以下规则集对这个特定的字符串数组进行排序(?):

c - 静态字段 - 初始化和更改值