顾名思义,整数类型的变量的值为整数。数学上的整数可以从负无穷大到正无穷大,但是由于计算机的存储单元是有限的,所以计算机语言提供了整数类型的值总是在一定范围之内。C#中有九种整数类型:短字节型(sbyte)、字节型(byte)、短整型(short)、无符号短整型(ushort)、整型(int)、无符号整型(uint)、长整型(long)、无符号长整型(ulong)。划分的依据是根据该类型的变量在内存中所占的位数。位数的概念是按照2的指数幂来定义的,比如说8位整数,则它可以表示2的8次方个数值,即256。这和我们在Windows系统中显示属性是一样的,比如16位真彩色,表示一共可以显示2的16次方即65536种颜色。
这些整数类型在数学上的表示以及在计算机中的取值范围如表4-1中所示:
表4-1 整数类型
数据类型 特征 取值范围
sbyte 有符号 8位整数 在-128到127之间
byte 无符号8位整数 在0到255之间
short 有符号16位整数 在-32768到32767之间
ushort 无符号16位整数 在0到65535之间
int 有符号32位整数 在-2147483648到2147483647之间
uint 无符号32位整数 0到4294967295之间
long 有符号64位整数 在-9223372036854775808到9223372036854775807之间
ulong 无符号64位整数 0和18446744073709551615之间
程序清单4-1:
using System;
class Test
{
public static void Main(){
short x=32766;
x++;
Console.WriteLine(x);
x++;
Console.WriteLine(x);
}
}
程序的输出为:
32767
-32768
上面的例子说明对于short类型的整数x已经超出了系统定义的范围(从-32768到32767之间)。
本文来自编程入门网:http://www.bianceng.cn/Programming/csharp/200709/4323.htm