文章目录

  • 一:堆栈
  • 二:堆栈的存储
  • 三:指针
    • 1: ![在这里插入图片描述](https://img-blog.csdnimg.cn/11c1f6ea296449de9360e6083468a405.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byg5a2m5oGS,size_14,color_FFFFFF,t_70,g_se,x_16)
    • c++中cout输出地址 (void*)&加变量

一:堆栈

在内存空间中,我们认为下面用到的连续空间,称作堆,从下往上存储。上面用到的连续空间称作栈。

所以进程的空间一般称为堆栈空间。

上面用的时候,栈从上往下逐渐开辟空间,堆是从下往上逐渐开辟空间。
栈上面可能还有一小段内核空间。

二:堆栈的存储

代码存在空间里面。
函数调用、局部变量定义在栈空间里面,
静态变量、数组在堆空间里面。

局部变量的值是随机的,全局变量的值全是0。这是因为开到栈空间里面的值都是随机的,不确定的。
开到堆里面的空间默认初始化为0。
所以全局数组默认为0,局部数组或变量不是0。

三:指针

1:

c++中cout输出地址 (void*)&加变量

c中 printf(“%p”,&变量名);

堆空间分配时从小到大的地址分配,栈空间地址是从大到小分配。

指针、堆栈(DAY 26)相关推荐

  1. 开发一个Linux调试器(八):堆栈展开

    有时你需要知道的最重要的信息是什么,你当前的程序状态是如何到达那里的.有一个 backtrace 命令,它给你提供了程序当前的函数调用链.这篇文章将向你展示如何在 x86_64 上实现堆栈展开以生成这 ...

  2. c语言 指针 字符串 回文 strcmp,【查找字符串面试题】面试问题:C语言指针题集… - 看准网...

    1. 若有说明:int a=2, *p=&a, *q=p;,则以下非法的赋值语句是(). A. p=q;           B. *p=*q;        C. a=*q;         ...

  3. C语言学习(指针)+PID系统

    指针 指针变量就是保存地址的变量 int i; int*p=&i; int *q; q=p;//指针p和q都指向了i,修改*p或者*q都可以改变量i的值 一般形式:    类型名   *指针变 ...

  4. c++常见面试题30道

    1.new.delete.malloc.free关系 delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数.malloc与free是C++/C语言的标准库函数,new ...

  5. C++常见面试题-30道

    来自:http://blog.csdn.net/wangshihui512/article/details/9092439 1.new.delete.malloc.free关系 delete会调用对象 ...

  6. C++Primer PLus 第五版读书笔记

    处理第一个问题: 1)某书店以文件形式保存其每一笔交易.没一笔交易记录某本书的销售情况,含有ISBM.销售册数和销售单 价.每一笔交易形如:0-201-70352-X 4 24.99 -------- ...

  7. 学习过程中部分c语言疑惑问题的代码验证

    所有代码均为曾经学习过程中不清楚不或明白的问题,做的验证,拿出来分享,文章有点长哦 内容涉及(按文章中的先后顺序):argc和argv:const:getmemory:各种数据类型所占用内存大小:pr ...

  8. C++黑马视频教程对应的课件

    C++黑马视频对应教程 文档一共分为三部分: part one c++基础入门 part two c++核心编程 part three c++提高编程 自己整理的,希望对大家学习c++有帮助 Visu ...

  9. c51单片机期末复习个人总结2单片机基本原理

    单片机基本原理 51系列单片机简介 MCS-51系列单片机的结构原理 MCS-51系列单片机的基本组成 MCS-51系列单片机的内部结构 51系列单片机的中央处理器 运算部件 控制部件 MCS-51系 ...

  10. 4399公司2017秋招前端笔试试卷

    1.关于数据结构,下列描述当中,正确的是() 正确答案: C 在深度为5的满二叉树中,叶子节点的个数为32 队列,栈以及二叉树都是线性结构 算法的复杂度主要包括时间复杂度和空间复杂度 在待排序的元素序 ...

最新文章

  1. 14 岁发现 Bug 兼职游戏开发、拒绝过乔布斯,Dropbox 创始人成为科技创业者的偶像...
  2. jquery选择器:与、或逻辑
  3. 如何计算一个神经网络在使用momentum时的hessian矩阵(论文调研)
  4. php实现直播答题系统,直播答题解决方案
  5. Oculus cv1 input
  6. bzoj1568 [JSOI2008]Blue Mary开公司 标记永久化线段树
  7. 安装Oracle提示OracleMTSRecoveryService 已经存在,解决方法
  8. mysql解压rar至指定文件夹_PHP解压ZIP文件到指定文件夹的方法
  9. 在浏览器用域名访问发现跳转到IIS Windows 界面
  10. 请绘制计算机串行通信原理图,单片机实验报告格式6
  11. talib安装error: Microsoft Visual C++ 14.0 or greater is required. Get it with Microsoft C++ Build的解决方案
  12. java高级用法之:绑定CPU的线程Thread-Affinity
  13. composer入门教程
  14. 【每日一句】名人金句学英语(20221130)
  15. Amazon SageMaker简直就是机器学习平台的天花板
  16. AcWing 739. 数组选择
  17. ImGui实现Button高亮
  18. 上传大文件解决方案方法
  19. 招聘:IT-互联网相关职位。如:手机客户端、iphone\ios\、PHP 开发工程师,产品经理...
  20. python F5创建pool和创建member(一)

热门文章

  1. execute与executeUpdate的区别(学习笔记)
  2. JSTL 计算时间差
  3. 作为一位软件测试工程师,应当需要哪些能力?
  4. URL中特殊字符的转义
  5. [转] Attach、Detach和DeleteObject
  6. 稀疏数组(golang实现)
  7. Linux 系统查询处理器架构
  8. 开启xmp1还是2_英雄联盟手游高帧率模式怎么开启-高帧率模式开启方法
  9. blender绑定骨骼法 2 rig
  10. 理解CPU/寄存器/内存之间的关系