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 de 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 Boolean
tipos de dados , Byte
, Char
, Date
, ULong
Short
UInteger
Object
SByte
ou UShort
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 numérica, fracionada | 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 anexando 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 Boolean
tipos de dados , Byte
, Date
, Object
SByte
, , 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
, , D
L
, 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 algarismos que se seguem ao prefixo devem ser adequados 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 (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 à esquerda, você deve adicionar o seguinte elemento ao seu arquivo 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.