动态分配内存与释放

1.malloc

malloc()可以找到一个大小合适的块。

内存是匿名的,也就是说,malloc()分配了内存,但没有为它指定名字。

格式如下:

double*ptd;

ptd=(double*)malloc(30*sizeof(double));

ps:ptd可以看成是一个数组。

malloc()可能分配不到所需的内存。在这种情况下,该函数返回空指针。

在C中,不一定要使用强制转换(double*),但C++中必须使用。所以,使用强制转换更容易

把C程序转换为C++程序。

2.free()

free()的参数应该是指针,指向由malloc()和calloc()分配的内存块。

格式如下:

free(ptd); (ptd为指针)

3.calloc()

long*ptd;

ptd=(long*)calloc(100,sizeof(long));

calloc()与malloc()几乎相同,主要区别是:malloc不初始化分配的内存,calloc()初始化

已分配的内存为0。

相关推荐
Doubbbbbbble云13 小时前
多维空间索引结构R树与KD树性能对比研究4
算法
海上小飞龙13 小时前
【KMP算法-中篇】next 数组的递推:往前填一位,靠的是往回退几步
算法
keyipatience13 小时前
B树详解:从零构建平衡多路搜索树
数据结构·b树·算法·图搜索
FluxArt14 小时前
GPT Image 2.5 多图参考怎么用:Flux Art 生成与编辑教程
数据结构·gpt·算法
All for pursuit.14 小时前
【分治-2】215.数组中的第K个最大元素
数据结构·c++·算法·leetcode
CQU_JIAKE14 小时前
9.15【A】
算法·动态规划
成为深度学习高手14 小时前
DAG:沿时间与通道双相关建模的外生变量时序预测
网络·人工智能·深度学习·算法·机器学习·数据挖掘·时序数据库
阳明山水15 小时前
CEDAR双重解耦实现决策与干预分离
人工智能·深度学习·算法·机器学习·架构
w_zero_one15 小时前
链表(3)
java·数据结构·算法
Zootopia62615 小时前
美国载人飞船Crew-13明晚发射!
人工智能·算法·机器学习·数学建模·无人机·创业创新·信息与通信