ulong (odwołanie w C#)

ulong Słowa kluczowego oznacza integralną typu, który przechowuje wartości zgodnie z wielkości i zasięgu pokazane w poniższej tabeli.

Typ

Zakres

Rozmiar

.NET Framework typu

ulong

0, 18,446,744,073,709,551,615

Liczba całkowita 64-bitowa bez znaku

UInt64

Literały

Można zadeklarować i zainicjować ulong zmiennej, tak jak w tym przykładzie:

ulong uLong = 9223372036854775808;

Jeśli nie określono żadnego sufiksu literałem liczby całkowitej, jego typ jest pierwszy z tych typów, które można przedstawić jej wartość: int, uint, long, ulong.W powyższym przykładzie jest typu ulong.

Sufiksy można również używać do określania typu literał zgodnie z następującymi zasadami:

  • Jeśli używasz l lub l, będzie typu literał liczby całkowitej, albo long lub ulong zgodnie z jego rozmiar.

    [!UWAGA]

    Mała litera "l" można użyć jako sufiksu.Jednak to generuje ostrzeżenie kompilatora ponieważ litery "l" jest łatwo pomylić z cyfrę "1". Dla jasności należy użyć "L".

  • Jeśli korzystasz z U lub u, będzie typu literał liczby całkowitej, albo uint lub ulong zgodnie z jego rozmiar.

  • Jeśli używasz, UL, ul, Ul, uL, LU, lu, Lu lub lU, będzie typu literał liczby całkowitej ulong.

    Na przykład, dane wyjściowe z trzech następujących instrukcji będzie typ systemu UInt64, które odpowiada alias ulong:

    Console.WriteLine(9223372036854775808L.GetType());
    Console.WriteLine(123UL.GetType());
    Console.WriteLine((123UL + 456).GetType());
    

Wspólne wykorzystanie sufiks jest wywołanie metody przeciążane.Należy wziąć pod uwagę, na przykład, następujące przeciążenia metody, które używają ulong i int parametry:

public static void SampleMethod(int i) {}
public static void SampleMethod(ulong l) {}

Za pomocą sufiksu z ulong parametru gwarantuje, że poprawny typ jest wywoływana, na przykład:

SampleMethod(5);    // Calling the method with the int parameter
SampleMethod(5UL);  // Calling the method with the ulong parameter

Konwersje

Istnieje wstępnie niejawna konwersja z ulong do pływaka, double, lub dziesiętne.

Istnieje niejawna konwersja z ulong do dowolnego typu integralną.Na przykład poniższa instrukcja wygeneruje błąd kompilacji bez wyraźnej oddanych:

long long1 = 8UL;   // Error: no implicit conversion from ulong

Istnieje wstępnie niejawna konwersja z bajt, ushort, uint, lub char do ulong.

Ponadto istnieje niejawna konwersja z zmiennoprzecinkowych typów ulong.Na przykład poniższa instrukcja generuje błąd kompilatora, chyba, że używany jest jawny oddanych:

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

Informacji na temat wyrażeń arytmetyczne z mieszanych typy zmiennoprzecinkowych i integralną, zobacz pływaka i double.

Aby uzyskać więcej informacji o regułach niejawna konwersja numeryczne, zobacz Tabela niejawnych konwersji liczbowych (odwołanie w C#).

Specyfikacja języka C#

Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka jest ostatecznym źródłem informacji o składni i użyciu języka C#.

Zobacz też

Informacje

Słowa kluczowe języka C#

Tabela typów całkowitych (odwołanie w C#)

Tabela typów wbudowanych (odwołanie w C#)

Tabela niejawnych konwersji liczbowych (odwołanie w C#)

Tabela jawnych konwersji liczbowych (odwołanie w C#)

UInt64

Koncepcje

Przewodnik programowania w języku C#

Inne zasoby

Odwołanie w C#