uint (C#-Referenz)

Das uint-Schlüsselwort kennzeichnet einen ganzzahligen Typ, in dem Werte entsprechend der Größe und dem Bereich in der folgenden Tabelle gespeichert werden.

Typ

Bereich

Größe

.NET Framework-Typ

uint

0 bis 4.294.967.295

Vorzeichenlose 32-Bit-Ganzzahl

System.UInt32

Hinweis   Der uint-Typ ist nicht CLS-fähig.Verwenden Sie wenn möglich int.

Literale

Eine Variable vom Typ uint kann wie im folgenden Beispiel deklariert und initialisiert werden:

uint myUint = 4294967290;

Wenn ein Ganzzahlliteral kein Suffix besitzt, entspricht sein Typ dem ersten der folgenden Typen, mit dem sein Wert dargestellt werden kann: int, uint, long, ulong.In diesem Beispiel ist dies uint:

uint uInt1 = 123;

Sie können auch das Suffix u oder U verwenden. Beispiel:

uint uInt2 = 123U;

Bei Verwendung des Suffixes U oder u wird der Typ des Ganzzahlliterals je nach numerischem Wert des Literals entweder als uint oder ulong festgelegt.Beispiele:

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

Mit diesem Code wird System.UInt32 und dahinter System.UInt64 angezeigt – die zugrunde liegenden Typen für uint und ulong –, da das zweite Literal zu groß ist, um mit dem uint-Typ gespeichert zu werden.

Konvertierungen

Es findet eine vordefinierte implizite Konvertierung von uint in long, ulong, float, double oder decimal statt.Beispiele:

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

Es findet eine vordefinierte implizite Konvertierung von byte, ushort oder char in uint statt.Andernfalls ist eine Typumwandlung erforderlich.Ohne Umwandlung verursacht die folgende Anweisung beispielsweise einen Kompilierungsfehler:

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

Beachten Sie auch, dass Gleitkommatypen nicht implizit in uint konvertiert werden.Durch die folgende Anweisung wird z. B. ein Compilerfehler erzeugt, sofern keine explizite Typumwandlung stattfindet:

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

Weitere Informationen zu arithmetischen Ausdrücken mit Gleitkomma- und ganzzahligen Typen finden Sie unter float und double.

Weitere Informationen zu impliziten numerischen Konvertierungsregeln finden Sie unter Tabelle für implizite numerische Konvertierungen (C#-Referenz).

C#-Programmiersprachenspezifikation

Weitere Informationen finden Sie in der C#-Sprachspezifikation. Die Sprachspezifikation ist die verbindliche Quelle für die Syntax und Verwendung von C#.

Siehe auch

Referenz

C#-Schlüsselwörter

Tabelle ganzzahliger Typen (C#-Referenz)

Tabelle integrierter Typen (C#-Referenz)

Tabelle für implizite numerische Konvertierungen (C#-Referenz)

Tabelle für explizite numerische Konvertierungen (C#-Referenz)

UInt32

Konzepte

C#-Programmierhandbuch

Weitere Ressourcen

C#-Referenz