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 |
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
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#)
Koncepcje
Przewodnik programowania w języku C#