C语言的malloc用法
时间: 2023-12-18 12:02:20 浏览: 101
C语言中的malloc函数用于动态分配内存空间,它的函数原型为:
```
void* malloc(size_t size);
```
其中,size_t是一个无符号整型,表示需要分配的内存空间大小。malloc函数会在程序执行期间向操作系统申请一块指定大小的内存空间,并返回该空间的地址,便于程序进行使用。使用malloc函数的一般流程如下:
1. 定义一个指针变量用于存储分配到的内存空间的地址。
2. 调用malloc函数申请内存空间,并将返回的指针赋值给上一步定义的指针变量。
3. 对申请到的内存空间进行读写操作。
4. 使用完毕后,调用free函数将该内存空间释放。
下面是一个示例代码,演示了如何使用malloc函数动态分配一个大小为10的整型数组:
```
#include <stdio.h>
#include <stdlib.h>
int main()
{
int *arr;
int i;
arr = (int *)malloc(sizeof(int) * 10);
if (arr == NULL) {
printf("Memory allocation failed!\n");
return -1;
}
for (i = 0; i < 10; i++) {
arr[i] = i * i;
}
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
free(arr);
return 0;
}
```
在这个示例中,我们首先定义了一个指向整型数组的指针变量arr,然后调用malloc函数申请了一个大小为10个整型数的内存空间,并将返回的指针赋值给arr。接着我们对这个数组进行了赋值和输出操作,最后使用free函数将该内存空间释放。
阅读全文