Udostępnij za pośrednictwem


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

Int64

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

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#)

Int64

Koncepcje

Przewodnik programowania w języku C#

Inne zasoby

Odwołanie w C#