c++如何用new分配内存
时间: 2023-12-18 11:20:09 浏览: 76
c++的内存分配
在C语言中,我们不能直接使用`new`关键字来分配内存。而是使用`malloc`函数来动态分配内存空间。例如,你可以使用以下代码来动态分配一个`int`类型的变量的内存空间:
```c
int* p = (int*)malloc(sizeof(int));
```
这段代码将会在堆上分配一块内存空间,大小为`sizeof(int)`,并将其地址赋值给指针变量`p`。
另外,你也可以使用`calloc`函数来分配一块已经初始化为0的内存空间。例如:
```c
int* p = (int*)calloc(5, sizeof(int));
```
这段代码将会分配5个`int`类型大小的内存空间,并将每个内存空间的值初始化为0。
在使用完这些动态分配的内存空间后,你需要使用`free`函数来释放这些内存空间。例如:
```c
free(p);
```
这会将之前分配的内存空间释放掉,使其可以再次被重复利用。
请注意,使用`malloc`和`free`时,需要根据具体的数据类型和分配的内存大小进行类型转换。
阅读全文