zoukankan      html  css  js  c++  java
  • C++ 内存相关

    1、C++的内存管理可分为以下几个部分:

      栈:记录程序的执行过程。

      堆:采用new,delete申请释放内存。

      自由存储区:对应于C中使用malloc,free申请释放内存。

      全局存储区:也叫静态存储区,存储static对象,包括全局对象,命名空间内对象,文件作用域内的static对象,类中的static对象,方法内的static对象。

      常量存储区:存放文本常量。

    2、对于32位系统,堆可用大小为为4G,对于一般程序,可认为无限大。栈可用大小为1M,也可以人为修改。

    3、 1Byte = 8Bit

      1Word = 2Byte

      1K = 1024Byte

      1M = 1024K

      1G = 1024M

      我们平时上网的速度是4M,但是我们下载的时候,发现最大速度也就四五百K每秒,这是怎么回事?网络运营商说的4M,是指4M Bit,计算机显示的是Byte为基本单位,因此4M = 4*1024/8 = 512K

    4、注意:字节是内存编址的最小单位。因此,对于大小为0的对象(没有实例字段和虚方法),为了表示在内存中,必须要用一个字节表示。再比如,对于bool,按道理只要1个bit就能表示了,但是由于字节是内存编址的最小单位,bool变量也要占用一个字节,浪费了7个Bit。

  • 相关阅读:
    HDU 2078 复习时间
    HDU 2076 夹角有多大
    邮票(codevs 2033)
    特种部队(codevs 1427)
    小a和uim之大逃离(洛谷 1373)
    地铁间谍(洛谷 2583)
    推销员(codevs 5126)
    小朋友的数字(codevs 3293)
    车站分级(洛谷 1983)
    Code(poj 17801)
  • 原文地址:https://www.cnblogs.com/nzbbody/p/3574202.html
Copyright © 2011-2022 走看看