c语言中 malloc
时间: 2023-11-27 10:40:54 浏览: 32
malloc是C语言中的动态内存分配函数,它的原型如下:
void *malloc(size_t size);
其中,size_t是一个无符号整数类型,表示需要分配的内存大小。malloc函数会在堆上分配一块指定大小的内存,并返回一个指向该内存块的指针。如果分配失败,则返回NULL。
使用malloc函数时,需要注意以下几点:
1. 需要使用stdlib.h头文件。
2. 分配的内存块大小应该是正整数,且不能为0。
3. 分配的内存块地址可以通过指针来进行访问和修改。
4. 使用完分配的内存块后,需要使用free函数来释放内存。
例如,以下代码演示了如何使用malloc函数分配一个大小为10个int的数组:
```
#include <stdio.h>
#include <stdlib.h>
int main()
{
int *arr;
int i;
arr = (int*)malloc(10 * sizeof(int));
if (arr == NULL)
{
printf("Memory allocation failed!\n");
exit(1);
}
for (i = 0; i < 10; i++)
{
arr[i] = i;
}
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
free(arr);
return 0;
}
```