news 2026/8/23 19:57:20

嵌入式学习!(一)C++学习(16)入门-12/17

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
嵌入式学习!(一)C++学习(16)入门-12/17

C++核心编程:面向对象

1. 内存分区模型

执行程序时,内存分为4个区域:

@ 代码区:存放函数二进制代码,有操作系统进行管理

@ 全局区:存放全局变量和静态变量及常量

@ 栈区:由编译器自动分配释放,存放函数的参数值,局部变量等

@ 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收

1.1 程序执行前

编译后,生成exe文件,未执行程序前分为两个区域:

代码区:存放CPU执行的机器指令

特点:共享、只读

全局区:存放全局变量和静态变量

还包含常量区、字符串常量和其他常量

该区域数据在程序结束后由操作系统释放

tips1:静态变量:在普通变量前加上 static

tips2:常量:字符串常量 "world"; const修饰的变量(全局、局部)

1.2 程序执行后

栈区:由编译器自动分配释放,存放函数的参数值,局部变量等

注意事项:不要返回局部变量的地址,栈区开辟的数据有编译器自动释放

堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收

C++中注意利用new关键字在堆区开辟内存

1.3 new 操作符

堆区开辟的数据,由程序员手动开辟,手动释放,释放利用操作符delete

语法:new 数据类型

利用new创建的数据,会返回该数据对应的类型指针

int * p = new int(10); // new 返回的值是个地址,堆区中 值为10 的 地址

delete p; //释放堆区内存

开辟一个数组: int * arr = new int[10]; //用中括号 [ ]

释放:delete [ ] arr;

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/22 1:21:00

终极免费抽奖神器:Magpie-LuckyDraw全平台部署指南

Magpie-LuckyDraw作为一款功能强大的年会抽奖系统,凭借其炫酷的3D动画效果和跨平台部署能力,成为各类活动现场的首选抽奖工具。这款开源抽奖软件支持Windows、Mac、Linux、Web和Docker全平台运行,让抽奖环节既公平又充满视觉冲击力。 【免费下…

作者头像 李华
网站建设 2026/8/23 5:42:55

技术人才职业发展:从工具思维到价值创造的成长阶梯

技术人才职业发展:从工具思维到价值创造的成长阶梯 【免费下载链接】engineering-management A collection of inspiring resources related to engineering management and tech leadership 项目地址: https://gitcode.com/GitHub_Trending/en/engineering-manag…

作者头像 李华
网站建设 2026/8/23 18:51:06

百度贴吧用户脚本终极指南:告别繁琐操作,体验贴吧新境界

百度贴吧用户脚本终极指南:告别繁琐操作,体验贴吧新境界 【免费下载链接】baidu-tieba-userscript 需要:支持扩展的浏览器,例如谷歌,yandex,火狐等;扩展:Tampermonkey脚本管理器; …

作者头像 李华
网站建设 2026/8/23 14:22:50

等待节点-–-behaviac

原文 等待(Wait)节点在指定的数值内(单位根据自己的使用场景来定)持续保持为运行(Running)状态,数值到达之后则返回成功,如下图所示: 需要配置“持续时间”,…

作者头像 李华
网站建设 2026/8/23 18:17:06

Nginx性能优化实战:从基础配置到高级调优的完整指南

Nginx性能优化实战:从基础配置到高级调优的完整指南 【免费下载链接】Linux-Tutorial Linux-Tutorial是一个Linux系统教程,适合用于学习和掌握Linux命令行操作和系统管理技能。特点:内容详细、实例丰富、适合入门。 项目地址: https://gitc…

作者头像 李华
网站建设 2026/8/23 19:57:23

ThingsGateway:开源智能设备管理平台的终极指南

ThingsGateway:开源智能设备管理平台的终极指南 【免费下载链接】ThingsGateway ThingsGateway 是基于Net6/7/8的跨平台边缘采集网关,提供底层PLC通讯库,通讯调试软件等。 项目地址: https://gitcode.com/gh_mirrors/th/ThingsGateway …

作者头像 李华