Condividi tramite


Tipi di caratteri (Visual Basic)

Oltre a specificare un tipo di dati in un'istruzione di dichiarazione, è possibile forzare il tipo di dati di alcuni elementi di programmazione con un carattere di tipo. Il carattere di tipo deve seguire immediatamente l'elemento, senza caratteri intermedi di qualsiasi tipo.

Il carattere di tipo non fa parte del nome dell'elemento. È possibile fare riferimento a un elemento definito con un carattere di tipo senza il carattere di tipo .

Tipi di caratteri dell'identificatore

Visual Basic fornisce un set di caratteri di tipo identificatore che è possibile usare in una dichiarazione per specificare il tipo di dati di una variabile o di una costante. Nella tabella seguente vengono illustrati i caratteri del tipo di identificatore disponibili con esempi di utilizzo.

Carattere tipo identificatore Tipo di dati Esempio
% Integer Dim L%
& Long Dim M&
@ Decimal Const W@ = 37.5
! Single Dim Q!
# Double Dim X#
$ String Dim V$ = "Secret"

Non esistono caratteri di tipo identificatore per i Booleantipi di dati , ByteCharDateObjectSByteShortUIntegerULongo UShort per qualsiasi tipo di dati composito, ad esempio matrici o strutture.

In alcuni casi, è possibile accodare il $ carattere a una funzione di Visual Basic, ad esempio Left$ invece di Left, per ottenere un valore restituito di tipo String.

In tutti i casi, il carattere del tipo di identificatore deve seguire immediatamente il nome dell'identificatore.

Caratteri di tipo letterale

Un valore letterale è una rappresentazione testuale di un determinato valore di un tipo di dati.

Tipi letterali predefiniti

Il formato di un valore letterale visualizzato nel codice determina in genere il tipo di dati. La tabella seguente illustra questi tipi predefiniti.

Forma testuale di valore letterale Tipo di dati predefinito Esempio
Numerico, nessuna parte frazionaria Integer 2147483647
Numerico, nessuna parte frazionaria, troppo grande per Integer Long 2147483648
Parte numerica, frazionaria Double 1.2
Racchiuso tra virgolette doppie String "A"
Racchiuso tra segni numerici Date #5/17/1993 9:32 AM#

Tipi letterali forzati

Visual Basic fornisce un set di caratteri di tipo letterale, che è possibile usare per forzare un valore letterale a presupporre un tipo di dati diverso da quello indicato nel formato. Per fare questo, aggiungi il carattere alla fine del valore letterale. La tabella seguente mostra i caratteri di tipo letterale disponibili con esempi di utilizzo.

Carattere di tipo letterale Tipo di dati Esempio
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

Non esistono caratteri di tipo letterale per i Booleantipi di dati , ByteDate, Object, SByte, o o String per qualsiasi tipo di dati composito, ad esempio matrici o strutture.

I valori letterali possono anche usare i caratteri di tipo identificatore (%, &, @, !, #, $), come variabili, costanti ed espressioni. Tuttavia, i caratteri di tipo letterale (S, I, L, DF, RC) possono essere usati solo con valori letterali.

In tutti i casi, il carattere di tipo letterale deve seguire immediatamente il valore letterale.

Valori letterali esadecimali, binari e ottali

In genere, il compilatore interpreta un valore letterale intero come appartenente al sistema numerico decimale (base 10). È anche possibile definire un valore letterale integer come numero esadecimale (base 16) con il &H prefisso, come numero binario (base 2) con il &B prefisso e come numero ottale (base 8) con il &O prefisso. Le cifre che seguono il prefisso devono essere appropriate per il sistema numerico. La tabella seguente illustra questa operazione.

Base numerica Prefisso Valori di cifra validi Esempio
Esadecimale (base 16) &H 0-9 e A-F &HFFFF
Binario (base 2) &B 0-1 &B01111100
Ottale (base 8) &O 0-7 &O77

A partire da Visual Basic 2017, è possibile usare il carattere di sottolineatura (_) come separatore di gruppo per migliorare la leggibilità di un valore letterale integrale. Nell'esempio seguente viene usato il _ carattere per raggruppare un valore letterale binario in gruppi a 8 bit:

Dim number As Integer = &B00100010_11000101_11001111_11001101

È possibile seguire un letterale prefissato con un carattere di tipo letterale. Nell'esempio seguente viene illustrato questo.

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

Nell'esempio precedente, counter ha il valore decimale -32768 e flags ha il valore decimale +32768.

A partire da Visual Basic 15.5, è anche possibile usare il carattere di sottolineatura (_) come separatore iniziale tra il prefisso e le cifre esadecimali, binarie o ottali. Per esempio:

Dim number As Integer = &H_C305_F860

Per usare il carattere di sottolineatura come separatore iniziale, è necessario aggiungere l'elemento seguente al file di progetto Visual Basic (*.vbproj):

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

Per altre informazioni, vedere Selezionare la versione del linguaggio Visual Basic.

Vedere anche