uint (Referencia de C#)
La palabra clave uint denota un tipo entero que almacena valores según el tamaño y el intervalo que se indican en la tabla siguiente.
Tipo |
Intervalo |
Size |
Tipo de .NET Framework |
---|---|---|---|
uint |
De 0 a 4.294.967.295 |
Entero de 32 bits sin signo |
Nota El tipo uint no es conforme a CLS.Siempre que sea posible, utilice int.
Literales
Las variables de tipo uint se pueden declarar e inicializar como en el siguiente ejemplo:
uint myUint = 4294967290;
Cuando un literal entero no tiene sufijo, su tipo es el primero de estos tipos en el que se puede representar su valor: int, uint, long, ulong.En este ejemplo, es uint:
uint uInt1 = 123;
También se puede utilizar el sufijo u o U:
uint uInt2 = 123U;
Cuando se utiliza el sufijo U o u, el tipo del literal puede ser uint o ulong según el valor numérico del literal.Por ejemplo:
Console.WriteLine(44U.GetType());
Console.WriteLine(323442434344U.GetType());
Este código muestra System.UInt32, seguido de System.UInt64 (los tipos subyacentes de uint y ulong, respectivamente), porque el segundo literal es demasiado grande para que lo almacene el tipo uint.
Conversiones
Existe una conversión implícita predefinida de uint a long, ulong, float, double o decimal.Por ejemplo:
float myFloat = 4294967290; // OK: implicit conversion to float
Existe una conversión implícita predefinida de byte, ushort o char a uint.En cualquier otro caso, se debe utilizar una conversión explícita.Por ejemplo, la instrucción de asignación siguiente genera un error de compilación si no se emplea una conversión explícita:
long aLong = 22;
// Error -- no implicit conversion from long:
uint uInt1 = aLong;
// OK -- explicit conversion:
uint uInt2 = (uint)aLong;
Observe que no existe conversión implícita de tipos de punto flotante a uint.Por ejemplo, la instrucción siguiente generará un error de compilación, a menos que se utilice una conversión explícita:
// Error -- no implicit conversion from double:
uint x = 3.0;
// OK -- explicit conversion:
uint y = (uint)3.0;
Para obtener información acerca de las expresiones aritméticas con tipos de punto flotante y tipos enteros, consulte float (Referencia de C#) y double (Referencia de C#).
Para obtener más información acerca de reglas de conversión numéricas implícitas, consulte Tabla de conversiones numéricas implícitas (Referencia de C#).
Especificación del lenguaje C#
Para obtener más información, vea la Especificación del lenguaje C#. La especificación del lenguaje es la fuente definitiva de la sintaxis y el uso de C#.
Vea también
Referencia
Tabla de tipos enteros (Referencia de C#)
Tabla de tipos integrados (Referencia de C#)
Tabla de conversiones numéricas implícitas (Referencia de C#)
Tabla de conversiones numéricas explícitas (Referencia de C#)