动态分配内存与释放

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。

相关推荐
旺仔.29119 小时前
常用算法 详解
数据结构·算法
今儿敲了吗19 小时前
算法复盘——差分
数据结构·c++·笔记·学习·算法
qq_3985865419 小时前
平衡三进制超前进位加法器
算法
西西弟19 小时前
最短路径之Dijkstra算法(数据结构)
数据结构·算法
沉鱼.4419 小时前
树形DP题目
算法·深度优先
VelinX20 小时前
【个人学习||算法】多维动态规划
学习·算法·动态规划
AlenTech20 小时前
139. 单词拆分 - 力扣(LeetCode)
算法·leetcode·职场和发展
墨韵流芳20 小时前
CCF-CSP第41次认证第一题——平衡数
c++·算法·ccf·平衡数
Book思议-20 小时前
【数据结构实战】栈的经典应用:后缀表达式求值 +中缀转后缀 ,原理 + 代码双通透
数据结构·算法··后缀表达式·后缀转中缀
炽烈小老头20 小时前
【 每天学习一点算法 2026/03/30】跳跃游戏
学习·算法