zoukankan      html  css  js  c++  java
  • C语言中 int、long、long long 的存储空间和值的范围

    ​ 在刚接触整型数据的存储空间和值的范围时,感觉这东西好无聊,应该没什么用吧!不过,现在,不得不承认,这东西真的很有用。在编写程序时,有些时候需要考虑数据规模,这个时候就能深切的体会到下面这个表格的用途了。例如,有些参加过程序设计竞赛的朋友应该知道,题目中是有测试数据规模要求的。

    类型 字节数 取值范围
    int 2 - 32768 ~ 32767 (5位十进制数)
    int 4 - 2147483648 ~ 2147483647 (10位十进制数)
    unsignde int 2 0 ~ 65535 (5位十进制数)
    unsignde int 4 0 ~ 4294967295 (10位十进制数)
    short 2 - 32768 ~ 32767 (5位十进制数)
    unsigned short 2 0 ~ 65535 (5位十进制数)
    long 4 - 2147483648 ~ 2147483647 (10位十进制数)
    usigned long 4 0 ~ 4294967295 (10位十进制数)
    long long 8 - 9223372036854775808 ~ 9223372036854775807(20位十进制数)
    unsigned long long 8 0 ~ 18446744073709551615 (20位十进制数)

    解释:

    ​ 1、编译系统给int型数据分配的内存可能是2个字节或是4个字节,具体由编译系统自行决定。例如:Turbo C 2.0分配的是2个字节,而Visual C++则分配4个字节。

    ​ 2、在编程考虑数据规模时,如果记不清楚具体数值范围,可根据十进制位数来决定使用什么类型。例如:当需要存储一个大小为100 000 000 0的数时,可以选择大于等于10位十进制数范围的类型,如long、long long 等。

  • 相关阅读:
    项目总结
    -webkit-background-clip渲染问题
    《编写可维护的JavaScript》- 类型检测
    百度ECharts使用
    使用HBuilderX将vue项目打包成app
    浅谈 asp.net core web api
    ASP.NET Core
    ASP.NET Core
    [翻译] 探究 Asp.net core 中间件 JWT bearer authentication 背后的技术
    ASP.NET Core
  • 原文地址:https://www.cnblogs.com/godfriend/p/10931503.html
Copyright © 2011-2022 走看看