c/c++常变量存放。栈区,堆区,静态区

本文介绍了C/C++中变量与常量的内存管理,包括生命周期、栈区、堆区和静态区的概念。栈区空间小,由系统自动管理;堆区由程序员手动分配和释放,若不释放可能导致内存泄漏;静态区在程序整个生命周期内存在,编译时分配。理解这些基础知识对于C/C++学习至关重要,特别是动态内存管理,对于复杂数据结构如链表、哈希的实现至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习语言,首先等知晓所敲下的代码做了什么,而代码中最重要的就是变量与常量,这些构成函数,产生功效。

首先得清楚以下几个知识点(或者说专有名词)

1.生命周期:变量的作用范围,类似生物的存活周期,对变量的使用得在其生命周期内。很好理解。

2. 内存:内存储器的存储量,理所当然,一个数据得占用一块物理空间,逻辑的东西得有物理的东西来支持。而存储器在一般电脑上是:寄存器-> 缓存->内存->硬盘。

 

 

栈区(stack):空间小,系统自动创建销毁。生长方向是由高地址向低地址生长。

堆区(heap):这个很关键,也是c/c++较很多语言灵活的地方,程序员手动开辟,手动释放,程序结束时可能由 OS 回收。使用关键字malloc/new,free/delete对其开辟释放空间,每个人电脑的空间都是有限的。生长方向与栈区相反。

静态区( static):内容在总个程序的生命周期内都存在,由编译器在编译的时候分配。存储。

文字可能冗杂,结合我绘制的图片方便理解记忆。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值