C语言中的malloc(函数)用法
时间: 2023-09-20 14:13:35 浏览: 199
malloc()函数用于在堆上分配指定大小的内存空间。它的用法如下:
```c
#include <stdlib.h>
void* malloc(size_t size);
```
其中,size_t表示无符号整型的数据类型,用于表示内存块的大小。malloc()函数返回一个指向分配的内存块的指针,如果分配失败,则返回NULL。
示例如下:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int* p;
p = (int*)malloc(10 * sizeof(int)); // 分配 10 个 int 类型大小的内存空间,强制类型转换为 int* 类型
if (p == NULL) {
printf("分配内存空间失败!\n");
return -1;
}
for (int i = 0; i < 10; i++) {
p[i] = i + 1;
printf("%d ", p[i]);
}
free(p); // 释放内存空间
return 0;
}
```
在上述示例中,我们首先声明了一个 int 类型的指针 p,然后调用 malloc() 函数分配了 10 个 int 类型的内存空间,并将返回的指针强制类型转换为 int* 类型的指针。如果分配失败,则返回 NULL。接下来,我们可以将指针 p 当作普通的数组使用,将数据存储到分配的内存空间中。最后,我们通过调用 free() 函数释放了分配的内存空间,避免内存泄漏。