c 语言一维数组分配释放
时间: 2023-09-27 22:12:02 浏览: 137
C语言中多维数组的内存分配和释放(malloc与free)的方法
在C语言中,可以使用动态内存分配来创建和释放一维数组。动态内存分配使用了两个函数:`malloc`和`free`。
首先,使用`malloc`函数来分配一维数组的内存空间。该函数的原型如下:
```c
void* malloc(size_t size);
```
其中,`size`参数表示要分配的内存空间的大小,以字节为单位。`malloc`函数会返回一个指向分配内存空间起始地址的指针。
例如,下面的代码演示了如何动态分配一个包含5个整数的一维数组:
```c
int* arr = (int*)malloc(5 * sizeof(int));
```
在这个例子中,我们使用了`malloc`函数来分配5个整数的内存空间,并将返回的指针转换为整型指针。
在使用完动态分配的数组后,应该使用`free`函数来释放内存空间。`free`函数的原型如下:
```c
void free(void* ptr);
```
其中,`ptr`参数表示要释放的内存空间的起始地址。
例如,下面的代码演示了如何释放之前动态分配的数组:
```c
free(arr);
```
在这个例子中,我们使用了`free`函数来释放之前分配的数组内存空间。
需要注意的是,动态分配的内存空间在使用完后必须释放,以避免内存泄漏。同时,使用动态分配的数组时应当谨慎,确保不会越界访问数组元素,以避免程序错误。
阅读全文