Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Contém inteiros de 64 bits (8 bytes) com sinal, que variam de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 (9.2...E+18).
Comentários
Use o tipo de dados Long para conter números inteiros que são muito grandes para caber no tipo de dados Integer.
O valor padrão de Long é 0.
Atribuições literais
Você pode declarar e inicializar uma variável Long atribuindo a ela um literal decimal, hexadecimal, octal ou (a partir do Visual Basic 2017) binário. Se o literal inteiro estiver fora do intervalo de Long (ou seja, se for menor que Int64.MinValue ou maior que Int64.MaxValue, ocorrerá um erro de compilação.
No exemplo a seguir, inteiros iguais a 4.294.967.296 representados como literais decimais, hexadecimais e binários são atribuídos a valores Long.
Dim longValue1 As Long = 4294967296
Console.WriteLine(longValue1)
Dim longValue2 As Long = &H100000000
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
Observação
Use o prefixo &h ou &H para indicar um literal hexadecimal, &b ou &B para indicar um literal binário e &o ou &O para indicar um literal octal. Literais decimais não têm nenhum prefixo.
A partir do Visual Basic 2017, você também pode usar o caractere de sublinhado, _, como separador de dígitos para melhorar a legibilidade, como no exemplo a seguir.
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
A partir do Visual Basic 15.5, você também pode usar o caractere de sublinhado (_) como separador à esquerda entre o prefixo e os dígitos hexadecimais, binários ou octais. Por exemplo:
Dim number As Long = &H_0FAC_0326_1489_D68C
Para usar o caractere de sublinhado como separador à esquerda, você deve adicionar o seguinte elemento ao arquivo de projeto do Visual Basic (*.vbproj):
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
Para obter mais informações, consulte Selecionar a versão da linguagem Visual Basic.
Literais numéricos também podem incluir o L para denotar o tipo de dados Long, como mostra o exemplo a seguir.
Dim number = &H_0FAC_0326_1489_D68CL
Dicas de programação
Considerações sobre interoperabilidade. Se você estiver fazendo interface com componentes não escritos para o .NET Framework, como objetos COM ou Automação, lembre-se de que
Longpossui uma largura de dados diferente (32 bits) em outros ambientes. Se você estiver passando um argumento de 32 bits para esse componente, declare-o comoIntegerem vez deLongno seu novo código do Visual Basic.Ampliação. O tipo de dados
Longé ampliado paraDecimal,SingleouDouble. Isso significa que você pode converterLongem qualquer um desses tipos sem a ocorrência de um erro System.OverflowException.Caracteres de Tipo. Acrescentar o caractere de tipo literal
La um literal o força ao tipo de dadosLong. Acrescentar o caractere de tipo identificador&a qualquer identificador o força ao tipoLong.Tipo do Framework. O tipo correspondente no .NET Framework é a estrutura System.Int64.