long (odwołanie w C#)
long 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 |
---|---|---|---|
long |
–9, 223, 372, 036, 854, 775 808 do 9,223,372,036,854,775,807 |
64-Bitowa liczba całkowita ze znakiem |
Literały
Można zadeklarować i zainicjować long zmiennej, tak jak w tym przykładzie:
long long1 = 4294967296;
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 poprzednim przykładzie jest typu long , ponieważ przekracza zakres uint (zobacz Tabela typów całkowitych (odwołanie w C#) rozmiarów składowania integralną typów).
Można również użyć sufiksu l z long typu następująco:
long long2 = 4294967296L;
Użycie sufiks L, typu literał liczby całkowitej jest określona albo być long lub ulong zgodnie z jego rozmiar.W przypadku jest long ponieważ on mniej niż zakres ulong.
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ą long i int parametry:
public static void SampleMethod(int i) {}
public static void SampleMethod(long l) {}
Za pomocą sufiksu l gwarantuje, że poprawny typ jest wywoływana, na przykład:
SampleMethod(5); // Calling the method with the int parameter
SampleMethod(5L); // Calling the method with the long parameter
Można użyć long typu z innych integralną typy liczbowe w tym samym wyrażeniu, w którym przypadku wyrażenie jest oceniane jako long (lub bool z relacyjnych lub logiczną wyrażeń).Na przykład, następujące wyrażenie jako long:
898L + 88
[!UWAGA]
Mała litera "l" można również użyć jako sufiks.Jednak to generuje ostrzeżenie kompilatora ponieważ litery "l" jest łatwo pomylić z cyfrę "1". Dla jasności należy użyć "L".
Informacji na temat wyrażeń arytmetyczne z mieszanych typy zmiennoprzecinkowych i integralną, zobacz pływaka i double.
Konwersje
Istnieje wstępnie niejawna konwersja z long do pływaka, double, lub dziesiętne.W przeciwnym razie muszą być używane rzutowanie.Na przykład poniższa instrukcja wygeneruje błąd kompilacji bez wyraźnej oddanych:
int x = 8L; // Error: no implicit conversion from long to int
int x = (int)8L; // OK: explicit conversion to int
Istnieje wstępnie niejawna konwersja z sbyte, bajt, krótki, ushort, int, uint, lub char do long.
Należy zwrócić również uwagę jest niejawna konwersja z zmiennoprzecinkowych typów do long.Na przykład poniższa instrukcja generuje błąd kompilatora, chyba, że używany jest jawny oddanych:
long x = 3.0; // Error: no implicit conversion from double
long y = (long)3.0; // OK: explicit conversion
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#