c/c++程序的内存开辟时 的内存情况

这篇具有很好参考价值的文章主要介绍了c/c++程序的内存开辟时 的内存情况。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我们写的代码都是要存放在内存空间中的,我们经常说堆区,静态区,还有栈区,相信很多人不是很明白,在今天这篇博客中让大家对它们有一个粗略的认识


c/c++程序的内存开辟时 的内存情况,c语言,开发语言,visual studio,1024程序员节

1.栈区(static)

在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时,这些存储单元自动被释放,栈内存分配运算内置与处理器的指令集中,效率很高,但是分配的内存容量有限。栈区主要存放要运行函数所分配的局部变量、函数参数、返回数据、返回地址等等

2.堆区(heap)

一般由程序员分配释放,若程序员不释放,程序结束时可能由操作系统回收。分配方式类似于链表

3.数据段(静态区)(static)

存放全局变量、静态数据,程序结束后由操作系统释放

4.代码段

存放函数体(类成员函数和全局函数)的二进制代码


对于C语言,我们目前了解这么多就够用,我们下期再见!!!文章来源地址https://www.toymoban.com/news/detail-741492.html

到了这里,关于c/c++程序的内存开辟时 的内存情况的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【C进阶】分析 C/C++程序的内存开辟与柔性数组(内有干货)

            本文是对于动态内存管理知识后续的补充,以及加深对其的理解。对于动态内存管理涉及的大部分知识在这篇文章中 ---- 【C进阶】 动态内存管理_Dream_Chaser~的博客-CSDN博客         本文涉及的知识内容主要在两方面: 简单解析C/C++程序的内存开辟 分析柔性数组

    2024年02月09日
    浏览(33)
  • C语言之开发工具:Visual Studio 2022安装教程

    一,C 语言 C 语言是一种通用的高级语言,最初是由丹尼斯·里奇在贝尔实验室为开发 UNIX 操作系统而设计的。C 语言最开始是于 1972 年在 DEC PDP-11 计算机上被首次实现。在 1978 年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)制作了 C 的第一个公开可用的描述

    2024年02月05日
    浏览(38)
  • C语言学习1--------Visual Studio集成开发环境的搭建

    建议初学者适用最新的——Visual Studio 2019为集成开发环境。 部分学校可能正在适用——VC++6.0,全称是Visual C++6.0。在当今的角度来看,VC++6.0已经比较古老,几乎没有公司会以VC++6.0作为开发环境进行开发了。 可能有些人认为Visual Studio太过庞大,并且项目组织较为复杂,不太适

    2024年02月08日
    浏览(40)
  • 【VisualStudio】基于 Visual Studio 使用 C++ 语言开发 Qt 环境配置教程

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 先上一张效果图,具体步骤主要分为以下三步。 这一步不再赘述,注意一定要安装 C++ 语言。 可以参考这个教程 Visual Studio 2022安装与使用教程。 这一步也不再赘述,网上搜索教

    2024年02月15日
    浏览(50)
  • 【Visual Studio】使用 C++ 语言,配合 Qt,开发了一个串口通信界面

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 我要使用的功能比较简单,主要包含扫描串口、打开串口、发送数据、接收数据、暂停按钮、停止按钮,因此接下里将围绕这几个功能依次更新。 我的工程项目名字叫 “GUI”。

    2024年02月11日
    浏览(57)
  • 【Visual Studio】报错 C2653,使用 C++ 语言,配合 Qt 开发串口通信界面

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 这个 Bug 是我做这个工程时遇到的:【Visual Studio】Qt 的实时绘图曲线功能,使用 C++ 语言,配合 Qt 开发串口通信界面。 使用 C++ 语言,配合 Qt 开发串口通信界面,在添加 Widget 做

    2024年02月11日
    浏览(40)
  • 使用 Visual Studio 2022 开发 Linux C++ 应用程序

    前置条件: Windows上需要先安装 WSL2,方法见: Install WSL | Microsoft Docs 在 WSL2 中依次执行如下命令,进行安装如下必需软件: Visual Studio 2022 引入了用于 Linux C++ 开发的本机 WSL2 工具集,可以构建和调试 Linux C++ 代码,并提供了非常好的 Linux 文件系统性能、GUI 支持和完整的系统

    2024年02月05日
    浏览(103)
  • 超详细的visual studio 2022图文安装教程+新建一个c语言程序

    1.1 官网地址下载https://visualstudio.microsoft.com/zh-hans/ 1.2 下载社区版本即可。必须勾选以下组件,其他内容可以按自己的需要进行增加。 2.1 新建项目 2.2 保存项目所在位置 2.3 在头文件选择邮件添加,并新建main.h,如下图所示。 2.4 按照同样的方式在源文件底下添加,main.c文件,

    2024年02月05日
    浏览(46)
  • 【Visual Studio】Qt 的实时绘图曲线功能,使用 C++ 语言,配合 Qt 开发串口通信界面

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 战斗背景:做了个串口接收界面,用来接收传输过来的信号。但是光用数字显示太单调,需要用图线显示出来。 战略目标:干掉它。 战术路线:Qt 绘图可以使用 Qt Charts,先了解

    2024年02月11日
    浏览(38)
  • 【Visual Studio】报错 ASSERT: “i >= 0 && i < size()“,使用 C++ 语言,配合 Qt 开发串口通信界面

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 这个 Bug 是我做这个工程时遇到的:【Visual Studio】Qt 的实时绘图曲线功能,使用 C++ 语言,配合 Qt 开发串口通信界面。 使用 C++ 语言,配合 Qt 开发串口通信界面,在调试动态绘图

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包