Sdílet prostřednictvím


ulong (Referenční dokumentace jazyka C#)

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

UInt64

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 Tabulka implicitních číselných převodů (Referenční dokumentace jazyka C#).

Specifikace jazyka C#

Další informace najdete 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

Klíčová slova jazyka C#

Tabulka celočíselných typů (Referenční dokumentace jazyka C#)

Tabulka předdefinovaných typů (Referenční dokumentace jazyka C#)

Tabulka implicitních číselných převodů (Referenční dokumentace jazyka C#)

Tabulka explicitních číselných převodů (Referenční dokumentace jazyka C#)

UInt64

Koncepty

Průvodce programováním v C#

Další zdroje

Referenční dokumentace jazyka C#