应该是-32767~32767吗?
为什么 在程序里定义:const int a=2000000000 ;
                或 static int a=2000000000;
                或 int a=2000000000;
                不溢出?int 到底有多大?

解决方案 »

  1.   

    win32下,是0XFFFFFFFF 
    -2G - 2G 左右。
      

  2.   

    to  everandforever(Forever):
       不明白!那long 是多大?
      

  3.   

    在Win32位平台,int是4个字节!
      

  4.   

    同意  huahero(华英雄) 
    32bit
    -0x80000000 ---- +0x7fffffff
    -2147483648 ---- +2147483647
      

  5.   

    用sizeof(int)返回的四个字节,32位,第一次灌水,多包涵:)
      

  6.   

    From MSDN:
    "
    INT_MAX      2147483647    Maximum (signed) int value 
    INT_MIN      –2147483647–1 Minimum (signed) int value 
    "
    From MSDN:
    "
    DWORD   A 32-bit unsigned integer or the address of a segment and its associated offset
    "
    所以
    int 与 DWORD 的长度相同(32位)但一个是有符号,一个是无符号int    0x 80 00 00 00 -- 0x 7f ff ff ff  (最高位是符号位)
    DWORD  0x 00 00 00 00 -- 0x ff ff ff ff  (没有符号位)
      

  7.   

    想它益处很用意
    int i=999999999999999999999999999999999999999;
    ok!
      

  8.   

    同意javanew(我是java新手)
    在32位的环境里
    long和int 一样大
      

  9.   

    DWORD 是unsigned short,在VC中用sizeof看,是两个字节的
      

  10.   

    应为是unsigned类型,所以从零开始,即0~0xffffffff