对于无符号数,根据占用的位数可以直接计算: unsigned short 16位 0~2的16次方-1(即65535) unsigned int 16位 0~2的16次方-1(即65535) unsigned long 32位 0~2的32次方-1(即4294967295) 对于有符号数,由于0也占用一个位置,导致负数的边界值与正数的边界值不一样: short 16位 - 2的(16-1)次方~2的(16-1)次方-1(即-32768~32767) int 16位 - 2的(16-1)次方~2的(16-1)次方-1(即-32768~32767) long 32位 - 2的(32-1)次方~2的(32-1)次方-1(即-2147483648~2147483647)