Sdílet prostřednictvím


Datový typ ULong (Visual Basic)

Obsahuje 64bitové celé číslo bez znaménka (8 bajtů) v rozsahu od 0 do 18 446 744 073 709 551 615 (více než 1,84krát 10 ^ 19).

Poznámky

ULong Datový typ použijte k tomu, aby obsahovala binární data příliš velká pro UIntegernebo největší možné celočíselné hodnoty bez znaménka.

Výchozí hodnota ULong je 0.

Přiřazení literálů

Proměnnou ULong můžete deklarovat a inicializovat přiřazením desetinného literálu, šestnáctkového literálu, osmičkového literálu nebo (počínaje jazykem Visual Basic 2017) binárního literálu. Pokud je celočíselná literál mimo rozsah ULong (tj. pokud je menší nebo větší než UInt64.MinValue UInt64.MaxValue, dojde k chybě kompilace.

V následujícím příkladu jsou celá čísla rovna 7 934 076 125, které jsou reprezentovány jako desítkové, šestnáctkové a binární literály jsou přiřazeny k ULong hodnotám.

Dim ulongValue1 As ULong = 7934076125
Console.WriteLine(ulongValue1)

Dim ulongValue2 As ULong = &H0001D8e864DD
Console.WriteLine(ulongValue2)

Dim ulongValue3 As ULong = &B0001_1101_1000_1110_1000_0110_0100_1101_1101
Console.WriteLine(ulongValue3)
' The example displays the following output:
'          7934076125
'          7934076125
'          7934076125

Poznámka:

Předponu nebo &H označujete šestnáctkový literál, předponu &b nebo &B binární literál a předponu &h &o nebo &O k označení osmičkového literálu. Desetinné literály nemají předponu.

Počínaje jazykem Visual Basic 2017 můžete také použít podtržítko , _jako oddělovač číslic k vylepšení čitelnosti, jak ukazuje následující příklad.

Dim longValue1 As Long = 4_294_967_296
Console.WriteLine(longValue1)

Dim longValue2 As Long = &H1_0000_0000
Console.WriteLine(longValue2)

Dim longValue3 As Long = &B1_0000_0000_0000_0000_0000_0000_0000_0000
Console.WriteLine(longValue3)
' The example displays the following output:
'          4294967296
'          4294967296
'          4294967296

Počínaje jazykem Visual Basic 15.5 můžete jako počáteční oddělovač mezi předponou a šestnáctkovými, binárními nebo osmičkovými číslicemi použít znak podtržítka (_). Příklad:

Dim number As ULong = &H_F9AC_0326_1489_D68C

Chcete-li použít znak podtržítka jako počáteční oddělovač, musíte do souboru projektu jazyka Visual Basic (*.vbproj) přidat následující prvek:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

Další informace naleznete v tématu Výběr jazykové verze jazyka Visual Basic.

Číselné literály mohou také obsahovat UL znak nebo ul znak typu, který označuje ULong datový typ, jak ukazuje následující příklad.

Dim number = &H_00_00_0A_96_2F_AC_14_D7ul

Tipy k programování

  • Záporná čísla Vzhledem k tomu ULong , že je typ bez znaménka, nemůže představovat záporné číslo. Pokud použijete unární mínus (-) operátor u výrazu, který se vyhodnotí jako typ ULong, Visual Basic převede výraz na Decimal první.

  • Dodržování předpisů CLS Datový ULong typ není součástí specifikace CLS (Common Language Specification ), takže kód kompatibilní se specifikací CLS nemůže využívat komponentu, která ji používá.

  • Co je potřeba vzít v úvahu. Pokud spolupracujete s komponentami, které nejsou napsané pro rozhraní .NET Framework, například pro objekty Automation nebo COM, mějte na paměti, že typy, jako ulong jsou můžou mít jinou šířku dat (32 bitů) v jiných prostředích. Pokud předáváte 32bitový argument této součásti, deklarujte ho jako UInteger místo ULong ve spravovaném kódu jazyka Visual Basic.

  • Rozšiřování. Datový ULong typ se rozšiřuje na Decimal, Singlea Double. To znamená, že můžete převést ULong na některý z těchto typů, aniž byste narazili na System.OverflowException chybu.

  • Zadejte znaky. Když k literálu připojíte znaky UL literálu, vynutíte ho k datovému ULong typu. ULong nemá žádný znak typu identifikátoru.

  • Typ architektury. Odpovídající typ v rozhraní .NET Framework je System.UInt64 struktura.

Viz také