值类型:uint
uint 关键字表示一种整型,该类型根据下表显示的大小和范围存储值。
类型 |
范围 |
大小 |
.NET Framework 类型 |
---|---|---|---|
uint |
0 到 4,294,967,295 |
无符号 32 位整数 |
|
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
注意 uint 类型与 CLS 不兼容。应尽可能使用 int。
标识符
可如下例所示声明并初始化 uint 类型的变量:
uint myUint = 4294967290; |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
如果整数没有后缀,则其类型为以下类型中可表示其值的第一个类型:
uint uInt1 = 123; |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
还可以像下面这样使用后缀 u 或 U:
uint uInt2 = 123U; |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
当使用后缀 U 或 u 时,将根据文本的数值来确定文本的类型是 uint 还是 ulong。例如:
Console.WriteLine(44U.GetType()); Console.WriteLine(323442434344U.GetType()); |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
此代码先后显示 System.UInt32 和 System.UInt64(它们分别是 uint 和 ulong 的基础类型),因为第二个文本太大,无法用 uint 类型来存储。
转换
存在从 uint 到
float myFloat = 4294967290; // OK: implicit conversion to float |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
存在从
long aLong = 22; // Error -- no implicit conversion from long: uint uInt1 = aLong; // OK -- explicit conversion: uint uInt2 = (uint)aLong; |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
还请注意,不存在从浮点型到 uint 类型的隐式转换。例如,除非使用显式强制转换,否则以下语句将生成一个编译器错误:
// Error -- no implicit conversion from double: uint x = 3.0; // OK -- explicit conversion: uint y = (uint)3.0; |
本在线速查手册由www.w∧3∧x∧u∧e.com提供,请勿盗用!
有关兼用浮点型和整型的算术表达式的信息,请参见
有关隐式数值转换规则的更多信息,请参见隐式数值转换表(C# 参考)。