zoukankan      html  css  js  c++  java
  • double,long double及各变量数组内存开销

      IEEE754浮点数的表示方法。C语言里对float类型数据的表示范围为-3.4*10^38~+3.4*10^38。double为-1.7*10^-308~1.7*10^308,long double为-1.2*10^-4932~1.2*10^4932.

    类型

    比特(位)数

    有效数字

    数值范围

    float

    32

    6~7

    -3.4*10^38~+3.4*10^38

    double

    64

    15~16

    -1.7*10^-308~1.7*10^308

    long double

    128

    18~19

    -1.2*10^-4932~1.2*10^4932

    long double 输入:scanf("%Lf",&x); printf("%.10Lf",x);

    另外分析下关于数组使用消耗内存情况.

    int float是32位,也就是4B=32bit

    当开一个10^7的数组时,消耗的内存为:10^7*4B=39063KB=38MB

    short int是16位,10^7数组需要内存为19MB

    bool,char是8位,10^7数组需要内存约为10MB

    long long,double是64位,10^7数组需要内存约为72MB

    long double 是128位的,10^7数组需要内存约为144MB

     

  • 相关阅读:
    Login
    2Sum,3Sum,4Sum,kSum,3Sum Closest系列
    Word Search II
    Word Search
    Linux命令四
    linux命令三
    Linux命令二
    Linux命令一
    网络基础
    操作系统
  • 原文地址:https://www.cnblogs.com/chenhuan001/p/5097007.html
Copyright © 2011-2022 走看看