如何用c语言使用malloc分配的内存空间
时间: 2023-08-07 16:03:21 浏览: 59
在C语言中,使用malloc函数来分配内存空间,其函数原型为:
```
void *malloc(size_t size);
```
其中,size_t是一种无符号整数类型,用于表示要分配的内存空间的大小(单位为字节)。malloc函数返回一个指向分配的内存空间的指针,如果分配失败,则返回NULL。
下面是一个使用malloc分配内存空间的示例程序:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int* arr;
int n;
printf("请输入数组的大小:");
scanf("%d", &n);
// 使用malloc分配n个int类型的内存空间
arr = (int*)malloc(n * sizeof(int));
if (arr == NULL) {
printf("内存分配失败!");
return 1;
}
// 对分配的内存空间进行初始化
for (int i = 0; i < n; i++) {
arr[i] = i;
}
// 输出数组中的元素
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
// 使用free函数释放内存空间
free(arr);
return 0;
}
```
在这个示例程序中,我们首先使用scanf函数读入一个整数n,然后使用malloc函数分配n个int类型的内存空间。如果分配失败,我们会输出一条错误信息并退出程序。
接着,我们对分配的内存空间进行初始化,将数组中的每个元素都赋值为它的下标。最后,我们输出数组中的元素,然后使用free函数释放内存空间。