日期:2014-05-18 浏览次数:20999 次
| 
 类型  | 
 位数  | 
 System.  | 
 与CLS兼容?  | 
 有无符号  | 
| 
 sbyte  | 
 8  | 
 SByte  | 
 否  | 
 有  | 
| 
 ushort  | 
 16  | 
 UInt16  | 
 否  | 
 无  | 
| 
 uint  | 
 32  | 
 UInt32  | 
 否  | 
 无  | 
| 
 ulong  | 
 64  | 
 UInt64  | 
 否  | 
 无  | 
| 
 
  | 
 
  | 
 
  | 
 
  | 
 
  | 
| 
 byte  | 
 8  | 
 Byte  | 
 是  | 
 无  | 
| 
 short  | 
 16  | 
 Int16  | 
 是  | 
 有  | 
| 
 int  | 
 32  | 
 Int32  | 
 是  | 
 有  | 
| 
 long  | 
 64  | 
 Int64  | 
 是  | 
 有  | 
有符号整形和字节型是属于“通用语言认证系统”(CLS)的。而无符号整形不属于CLS。
你可以使用原始的类型关键字(如int)或与之对应的别名(如System.Int32),这两种方法都是可行的。但唯一例外的情况是:当你把类型名作为.net framework函数实参的时候,你只能使用System.Int32,而不能使用int。例如,你必须这样调用:Type.GetType("System.Int32"),而Type.GetType("int")语句是错误的。这是因为int只是C#中的关键字,而.net framework函数是设计成在所有的.net语言中都通用的。必须注意的是byte在C#中是无符号的。
注意:byte和sbyt只有8位,因此它们不能作为数组的元素,因为数组元素的最小尺寸是16位(2字节)。