malloc
动态内存分配函数,用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址。
函数原型
extern void *malloc(unsigned int num_bytes); //分配长度为num_bytes字节的内存块
头文件
#include <malloc.h>
返回值
如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL。
注意事项
- malloc函数的返回的是无类型指针,在使用时一定要强制转换为所需要的类型。
- 在使用malloc开辟空间时,使用完成一定要释放空间,如果不释放会造内存泄漏。
- 在使用malloc函数开辟的空间中,不要进行指针的移动,因为一旦移动之后可能出现申请的空间和释放空间大小的不匹配。
使用形式
int *p = NULL;
int n = 10;
p = (int *)malloc(sizeof(int)*n); //指针自身 = (指针类型*)malloc(sizeof(指针类型)*数据数量)
free函数
int main()
{
int *p = (int *)malloc(sizeof(int));
*p = 100;
free(p); //释放malloc(或calloc、realloc)函数给指针变量分配的内存空间
p = NULL; //使用后该指针变量一定要重新指向NULL,防止悬空指针(失效指针)出现,有效规避错误操作。
return 0;
}
FEATURED TAGS
jekyll
RubyGems
Blog
Mac
终端
Git
弹塑性分析
非线性
SAUSAGE
Github
纤维素
分层壳
iOS
ABAQUS
Avg:75%
魔方
三阶
二阶
广东实验公开赛
WCA
SAP2000
Williams双杆体系
几何非线性
GitBook
Markdown
Typora
Node.js
html
超限
抗剪截面验算
剪压比
微信公众号
地震波
波谱分析
动力弹塑性分析
初始缺陷
欧拉公式
动力弹塑性
超高层
选波
视频
Delta
SAUSG
屈曲分析
弹塑性时程分析
子程序
跨层柱
层间位移角
层剪力
HKSC
steel
Eurocodes
弹塑性
非线性设计
AISC
Imperfections
YJK
直接分析法
delta
构件缺陷
整体缺陷
直接分析设计
SAUSG-Delta
原理
案例
PPT
建筑云联盟
C++
MFC
ChartCtrl
fema
pushover
Equivalent Linearization
RGB
编程
颜色
网络
远程桌面
PI
ZETA
DELTA
OpenSAUSG
VS
C
CUDA
fwrite
二进制
bat
cmd
rdp
mstsc
数据结构
2024
深度学习
cuda
miniconda
pytorch
ChatGPT