Share via


uint (Referência de C#)

O uint palavra-chave significa tipo integral que armazena valores de acordo com o tamanho e o intervalo, mostrado na tabela a seguir.

Tipo

Intervalo

Tamanho

Tipo .NET Framework

uint

0 a 4,294,967,295

Inteiro de 32 bits sem-sinal

UInt32

Nota a uint o tipo não é compatível com CLS. Use int sempre que possível.

Literais

Você pode declarar e inicializar uma variável do tipo uint , como neste exemplo:

uint myUint = 4294967290;

Quando um literal inteiro não tem nenhum sufixo, seu tipo é o primeiro desses tipos no qual o seu valor pode ser representado: int, uint, longo, ulong. Neste exemplo, é uint:

uint uInt1 = 123;

Você também pode usar o sufixo u ou U, como este:

uint uInt2 = 123U;

Quando você usa o sufixo U ou u, o tipo do literal é determinado para ser uma uint ou ulong ao valor numérico do literal. Por exemplo:

Console.WriteLine(44U.GetType());
Console.WriteLine(323442434344U.GetType());

Esse código exibe System.UInt32, em seguida, System.UInt64 – a base tipos para uint e ulong respectivamente – porque o segundo literal é muito grande para ser armazenadas pelo uint tipo.

Conversões

Há uma conversão implícita predefinida de uint para longo, ulong, float, double, ou decimal. Por exemplo:

float myFloat = 4294967290;   // OK: implicit conversion to float

Há uma conversão implícita predefinida de bytes, ushort, ou char para uint. Caso contrário, você deve usar uma projeção. Por exemplo, a seguinte instrução de atribuição produzirá um erro de compilação sem uma conversão:

long aLong = 22;
// Error -- no implicit conversion from long:
uint uInt1 = aLong; 
// OK -- explicit conversion:
uint uInt2 = (uint)aLong;

Observe também que não há nenhuma conversão implícita de tipos de ponto flutuante para uint. Por exemplo, a instrução a seguir gera um erro do compilador, a menos que seja usada uma conversão explícita:

// Error -- no implicit conversion from double:
uint x = 3.0;
// OK -- explicit conversion:
uint y = (uint)3.0; 

Para obter informações sobre expressões aritméticas com tipos mistos de ponto flutuante e tipos integrais, consulte float e double.

Para obter mais informações sobre regras de conversão numérica implícito, consulte o Tabela de conversões numéricas implícitas (Referência de C#).

Especificação da linguagem C#

Para obter mais informações, consulte a Especificação da linguagem C#. A especificação da linguagem é a fonte definitiva para a sintaxe e o uso de C#.

Consulte também

Referência

Palavras-chave C#

Tabela de tipos integrais (Referência de C#)

Tabela de tipos internos (Referência de C#)

Tabela de conversões numéricas implícitas (Referência de C#)

Tabela de conversões numéricas explícitas (Referência de C#)

UInt32

Conceitos

Guia de Programação em C#

Outros recursos

Referência de C#