当前位置: 首页 > web >正文

动态内存管理

本章重点

1.为什么存在动态内存分配

2.动态内存函数的介绍

3.malloc free calloc realloc

4.常见的动态内存错误

一.为什么存在动态内存分配

二.动态内存函数的介绍

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
int main()
{   //开辟四十个字节的空间用来存放整形int* p = (int*)malloc(40);//存放1~10int i = 0;//记得判断p是否为空指针if (p == NULL){printf("%s\n", strerror(errno));return 1;}for (i = 0;i < 10;i++){p[i] = i + 1;}for (i = 0;i < 10;i++){printf("%d ",p[i]);}//一定记得开辟完内存记得释放,以及置为空指针。free(p);p = NULL;return 0;
}

int main()
{   int* p = (int*)calloc(10, sizeof(int));if (p == NULL){printf("%s\n", strerror(errno));return 1;}free(p);p = NULL;return 0;
}

 

http://www.xdnf.cn/news/550.html

相关文章:

  • [dp20_完全背包] 介绍 | 零钱兑换
  • PSN港服跳过生日找回密码(需要英语对话,需要注册的id)
  • 超大文件处理——文件强制切割:突破存储传输限制,提升数据处理效能—星辰大文化术——未来之窗超算中心
  • 小样本学习和元学习
  • STM32学习笔记汇总
  • 图 - 最短路径算法 -- Dijkstra -- Bellman-Ford -- Floyd-Warshall
  • 每日OJ_牛客_最小差值_排序_C++_Java
  • 链表面试题
  • element-plus样式失效的原因总结
  • Linux 桌面环境 LXQt 2.2 发布
  • 放松大脑的方法
  • dev_set_drvdata、dev_get_drvdata使用详解
  • 加密与解密完全指南,使用Java实现
  • 图 - 最小生成树算法 - Kruskal - Prim
  • 基于有效样本数的类别平衡损失 (Class-Balanced Loss, CVPR 2019)
  • AOSP的Doze模式-LightIdle初识
  • 企业级RAG选择难题:数据方案的关键博弈
  • Mysql从入门到上手(一)-Mysql安装和Navicat安装及使用.
  • 【Python标准库】数学相关的9个标准库
  • 基于模态关系理解的无人机视觉语言导航模型
  • 解决Ubuntu图形化界面操作适配问题
  • CRT(阴极射线管)终端控制器
  • rebase和merge的区别
  • 【FreeRTOS进阶】优先级翻转现象详解及解决方案
  • MLLMs for TSAD ?
  • 代码审计入门 原生态sql注入篇
  • 如何对docker镜像存在的gosu安全漏洞进行修复——筑梦之路
  • LeetCode 热题 100:回溯
  • 两阶段快速立体匹配算法总结(TSSM)
  • 【综述】一文读懂卷积神经网络(CNN)