Partilhar via


Caracteres de texto (Visual Basic)

Além de especificar um tipo de dados em uma instrução de declaração, você pode forçar o tipo de dados de alguns elementos de programação com um caractere de tipo. O caractere de tipo deve seguir imediatamente o elemento, sem caracteres intervenientes de qualquer tipo.

O caractere de tipo não faz parte do nome do elemento. Um elemento definido com um caractere de tipo pode ser referenciado sem o caractere de tipo.

Caracteres de tipo de identificador

Visual Basic fornece um conjunto de caracteres de tipo de identificador que você pode usar em uma declaração para especificar o tipo de dados de uma variável ou constante. A tabela a seguir mostra os caracteres de tipo de identificador disponíveis com exemplos de uso.

Caractere de tipo identificador Tipo de dados Exemplo
% Integer Dim L%
& Long Dim M&
@ Decimal Const W@ = 37.5
! Single Dim Q!
# Double Dim X#
$ String Dim V$ = "Secret"

Não existem caracteres de tipo de identificador para os tipos de dados Boolean, Byte, Char, Date, Object, SByte, Short, UInteger, ULong, ou UShort, ou para quaisquer tipos de dados compostos, como matrizes ou estruturas.

Em alguns casos, você pode acrescentar o $ caractere a uma função do Visual Basic, por exemplo Left$ , em vez de Left, para obter um valor retornado do tipo String.

Em todos os casos, o caractere de tipo identificador deve seguir imediatamente o nome do identificador.

Caracteres de tipo literal

Um literal é uma representação textual de um valor particular de um tipo de dados.

Tipos literais padrão

A forma de um literal como ele aparece em seu código normalmente determina seu tipo de dados. A tabela a seguir mostra esses tipos padrão.

Forma textual de literal Tipo de dados padrão Exemplo
Numérico, sem parte fracionada Integer 2147483647
Numérico, sem parte fracionária, muito grande para Integer Long 2147483648
Parte fracionária numérica Double 1.2
Entre aspas duplas String "A"
Dentro de sinais numéricos Date #5/17/1993 9:32 AM#

Tipos literais forçados

Visual Basic fornece um conjunto de caracteres de tipo literal, que você pode usar para forçar um literal a assumir um tipo de dados diferente daquele que seu formulário indica. Você faz isso acrescentando o caractere ao final do literal. A tabela a seguir mostra os caracteres de tipo literal disponíveis com exemplos de uso.

Caractere de tipo literal Tipo de dados Exemplo
S Short I = 347S
I Integer J = 347I
L Long K = 347L
D Decimal X = 347D
F Single Y = 347F
R Double Z = 347R
US UShort L = 347US
UI UInteger M = 347UI
UL ULong N = 347UL
C Char Q = "."C

Não existem caracteres de tipo literal para os Booleantipos de dados , Byte, Date, ObjectSByte, , ou String para quaisquer tipos de dados compostos, como matrizes ou estruturas.

Os literais também podem usar os caracteres de tipo identificador (%, &, @, !, #, $), assim como variáveis, constantes e expressões. No entanto, os caracteres de tipo literal (S, I, L, D, F, R, C) podem ser usados apenas com literais.

Em todos os casos, o caractere de tipo literal deve seguir imediatamente o valor literal.

Literais hexadecimais, binários e octais

O compilador normalmente interpreta um literal inteiro para estar no sistema de números decimais (base 10). Você também pode definir um literal inteiro como um número hexadecimal (base 16) com o prefixo &H , como um número binário (base 2) com o prefixo &B e como um número octal (base 8) com o prefixo &O . Os dígitos que se seguem ao prefixo devem ser apropriados para o sistema numérico. A tabela a seguir ilustra isso.

Base numérica Prefixo Valores de dígitos válidos Exemplo
Hexadecimal (base 16) &H 0-9 e A-F &HFFFF
Binário (base 2) &B 0-1 &B01111100
Octal (sistema de base 8) &O 0-7 &O77

A partir do Visual Basic 2017, você pode usar o caractere de sublinhado (_) como um separador de grupo para melhorar a legibilidade de um literal integral. O exemplo a seguir usa o _ caractere para agrupar um literal binário em grupos de 8 bits:

Dim number As Integer = &B00100010_11000101_11001111_11001101

Você pode seguir um literal prefixado com um caractere de tipo literal. O exemplo a seguir mostra isso.

Dim counter As Short = &H8000S
Dim flags As UShort = &H8000US

No exemplo anterior, counter tem o valor decimal de -32768 e flags tem o valor decimal de +32768.

A partir do Visual Basic 15.5, você também pode usar o caractere de sublinhado (_) como um separador à esquerda entre o prefixo e os dígitos hexadecimais, binários ou octais. Por exemplo:

Dim number As Integer = &H_C305_F860

Para usar o caractere de sublinhado como um separador inicial, deve adicionar o seguinte elemento ao seu ficheiro de projeto do Visual Basic (*.vbproj):

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

Para obter mais informações, consulte Selecione a versão da linguagem Visual Basic.

Ver também