malloc申请一个内存。举例编写一个函数。使用这个内存作为参数
时间: 2024-10-21 08:04:28 浏览: 18
单片机课程设计——标准函数stdlib.h应用举例.zip
malloc是一个在C语言中用于动态内存分配的库函数,它从系统的内存池中为程序请求指定大小的内存空间,并返回一个指向该内存的指针。如果分配成功,函数会返回一个非NULL指针;如果失败,返回NULL。
下面是一个简单的示例,我们编写一个函数`useMallocMemory`,它接受一个通过malloc动态分配的整型数组:
```c
#include <stdlib.h> // 包含malloc函数
void* allocate_memory(size_t size) {
void* ptr = malloc(size); // 动态分配指定大小的内存
if (ptr == NULL) {
perror("Failed to allocate memory");
exit(1);
}
return ptr;
}
// 使用malloc内存的例子
int main() {
int array_size = 10;
int* my_array = allocate_memory(array_size * sizeof(int)); // 获取数组内存
if (my_array) {
// 现在my_array指向了足够存放10个整数的空间,你可以在这里进行操作
for (size_t i = 0; i < array_size; i++) {
my_array[i] = i; // 初始化数组元素
}
// ...后续对数组的操作...
free(my_array); // 使用完毕后记得释放内存
}
return 0;
}
```
在这个例子中,`allocate_memory`函数负责分配内存,而`main`函数调用它并使用返回的内存。当不再需要这个内存时,通过`free`函数将其释放,防止内存泄漏。
阅读全文