动态分配内存与释放

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。

相关推荐
土司大王13 小时前
LeetCode hot100——两两交换链表中的节点
算法·leetcode·职场和发展
大熊背14 小时前
树莓派IspPipeline LSC模块原理详解
算法·lsc·isppipeline·mesh lsc
zander25815 小时前
LeetCode 300. 最长递增子序列
算法·leetcode·深度优先
祖力5515 小时前
Linux应用软件编程:目录IO与framebuffer
linux·运维·算法·framebuffer·目录io
名字还没想好☜15 小时前
Go 用 slices/maps 标准库泛型函数:告别手写 Contains、Sort、去重(Go 1.21)
开发语言·后端·算法·golang·go
地平线开发者15 小时前
【模型轻量化专题】深度学习模型为什么需要轻量化
算法
_Narcissus_16 小时前
链表算法题和静态链表
数据结构·c++·笔记·算法·链表·ai·力扣
Lyyaoo.16 小时前
【普通数组】【中等】除了自身以外数组的乘积
数据结构·算法·leetcode
threerocks16 小时前
《The AI-Native SDLC Playbook》万字拆解
算法·aigc·ai编程
夏玉林的学习之路16 小时前
算法8.环形队列
算法