ulong (C#-Reference)
ulong Klíčové slovo označuje integrálního typu, který ukládá hodnoty podle velikosti a oblasti, které jsou uvedeny v následující tabulce.
Type |
Rozsah |
Size |
typ .NET Framework |
---|---|---|---|
ulong |
0 až 18,446,744,073,709,551,615 |
Celé číslo bez znaménka 64 bit |
Literály
Můžete deklarovat a inicializovat ulong proměnné následujícím způsobem:
ulong uLong = 9223372036854775808;
Po celé literálu nemá žádnou příponu, jeho typ je první z těchto typů, ve kterých lze znázornit jeho hodnota: int, uint, dlouhý, ulong.V příkladu výše je typu ulong.
Přípony můžete také zadat typ literál podle následujících pravidel:
Pokud používáte l nebo l, typ Celočíselný literál bude buď dlouhý nebo ulong podle své velikosti.
[!POZNÁMKA]
Malé písmeno "l" můžete použít jako příponu.Však toto upozornění kompilátoru generuje protože písmeno "l" snadno zaměnit číslici 1." Z důvodu srozumitelnosti použijte "L".
Používáte-li U nebo u, buď bude typ Integer literál uint nebo ulong podle své velikosti.
Používáte UL, ul, Ul, uL, LU, lu, Lu nebo lU typ Integer literálu bude ulong.
Například následující tři příkazy výstup bude typ systému UInt64, který odpovídá alias ulong:
Console.WriteLine(9223372036854775808L.GetType()); Console.WriteLine(123UL.GetType()); Console.WriteLine((123UL + 456).GetType());
Běžné použití přípony je volání metod přetížené.Zvažte například následující přetížení metody, které používají ulong a int parametry:
public static void SampleMethod(int i) {}
public static void SampleMethod(ulong l) {}
Pomocí přípony s ulong parametr zaručuje, že správný typ je názvem, například:
SampleMethod(5); // Calling the method with the int parameter
SampleMethod(5UL); // Calling the method with the ulong parameter
Převody
Existuje předdefinované implicitní převod z ulong na plovoucí, dvojité, nebo desetinné.
Neexistuje žádná implicitní převod z ulong na jakékoli integrálního typu.Následující příkaz například vytvoří bez explicitní přetypování došlo k chybě kompilace:
long long1 = 8UL; // Error: no implicit conversion from ulong
Existuje předdefinované implicitní převod z bajt, ushort, uint, nebo char na ulong.
Také je implicitní převod z typů s plovoucí desetinnou čárkou pro ulong.Například následující příkaz vygeneruje chybu kompilátoru Pokud explicitní cast:
// Error -- no implicit conversion from double:
ulong x = 3.0;
// OK -- explicit conversion:
ulong y = (ulong)3.0;
Informace o aritmetické výrazy s typy nedílnou a smíšené typy s plovoucí desetinnou čárkou, viz plovoucí a dvojité.
Další informace o pravidlech implicitní převod číselných naleznete Implicitní číselné tabulky převody (C#-Reference).
Specifikace jazyka C#
Další informace naleznete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.
Viz také
Referenční dokumentace
Nedílnou tabulky typy (C#-Reference)
Předdefinované typy (C#-Reference)
Implicitní číselné tabulky převody (C#-Reference)
Explicitní číselné tabulky převody (C#-Reference)