zoukankan      html  css  js  c++  java
  • C++基础总结(1)--基本数据类型范围

    unsigned   int   0~4294967295   
    int   2147483648~2147483647 
    unsigned long 0~4294967295
    long   2147483648~2147483647
    long long的最大值:9223372036854775807
    long long的最小值:-9223372036854775808
    unsigned long long的最大值:1844674407370955161

    __int64的最大值:9223372036854775807
    __int64的最小值:-9223372036854775808

    unsigned __int64的最大值:18446744073709551615


    Unsigned short short的取值范围的计算

     答:short在计算机中是以16位二进制补码保存。因为整数的补码是其本身,所以unsigned short的最小值为00000000000000,而它的最大值表示为1111111111111111,即为2^16-1=65535。而short用补码表示的时候第一位用来表示符号位,1000000000000000000000000000000都是表示的。(最前面的符号位1表示负数,0表示正数)

    表示所以表示正数的时候范围从0000000000000000~0111111111111111,即[0,32767].当表示负数的时候,可以从1000000000000000表示到1111111111111111(此处为原码表示),即[-32767,-0],补码表示负数即将其原码除符号位以外的数值位取反+1.-32767的补码为1000000000000001,但100000000000000000(-0)的补码为00000000000000000的补码一样。我们知道0的补码只有一个,任何一个原码在转变成补码时都不可能转变成10000000000000000,所以人们规定将1000000000000000编码成2^15=32768.                 


  • 相关阅读:
    HDU 1018 Big Number
    UVa 10603 倒水问题
    UVa 12108 特别困的学生
    UVa 1590 IP网络(简单位运算)
    UVa 12325 宝箱
    UVa 253 骰子涂色
    UVa 815 洪水!
    springmvc(2)处理器设配器和映射器
    SpringMVC(1)
    MyBatis(10)逆向工程
  • 原文地址:https://www.cnblogs.com/gaot/p/7709704.html
Copyright © 2011-2022 走看看