Pascal - Tipi di dati
I tipi di dati di un'entità indicano il significato, i vincoli, i possibili valori, le operazioni, le funzioni e la modalità di archiviazione ad essa associati.
I tipi intero, reale, booleano e carattere sono indicati come tipi di dati standard. I tipi di dati possono essere classificati come tipi di dati scalari, puntatori e strutturati. Esempi di tipi di dati scalari sono integer, real, boolean, character, subrange ed enumerated. I tipi di dati strutturati sono costituiti dai tipi scalari; ad esempio, array, record, file e set. Discuteremo più avanti i tipi di dati del puntatore.
Tipi di dati Pascal
I tipi di dati Pascal possono essere riassunti come di seguito nel diagramma seguente:
Dichiarazioni di tipo
La dichiarazione del tipo viene utilizzata per dichiarare il tipo di dati di un identificatore. La sintassi della dichiarazione del tipo è -
type-identifier-1, type-identfier-2 = type-specifier;
Ad esempio, la seguente dichiarazione definisce le variabili giorni ed età come tipo intero, sì e vero come tipo booleano, nome e città come tipo stringa, commissioni e spese come tipo reale.
type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;
Tipi interi
La tabella seguente fornisce dettagli sui tipi interi standard con le dimensioni di archiviazione e gli intervalli di valori utilizzati in Object Pascal -
genere | Minimo | Massimo | Formato |
---|---|---|---|
Numero intero | -2147483648 | 2147483647 | firmato a 32 bit |
Cardinale | 0 | 4294967295 | 32 bit senza segno |
Shortint | -128 | 127 | firmato a 8 bit |
Smallint | -32768 | 32767 | firmato a 16 bit |
Longint | -2147483648 | 2147483647 | firmato a 32 bit |
Int64 | -2 ^ 63 | 2 ^ 63 - 1 | firmato a 64 bit |
Byte | 0 | 255 | 8 bit senza segno |
parola | 0 | 65535 | 16 bit senza segno |
Longword | 0 | 4294967295 | 32 bit senza segno |
Costanti
L'uso di costanti rende un programma più leggibile e aiuta a mantenere quantità speciali in un punto all'inizio del programma. Pascal consente costanti numeriche, logiche, stringa e carattere . Le costanti possono essere dichiarate nella parte di dichiarazione del programma specificando l'estensioneconst dichiarazione.
La sintassi della dichiarazione di tipo costante è la seguente:
const
Identifier = contant_value;
Di seguito sono riportati alcuni esempi di dichiarazioni costanti:
VELOCITY_LIGHT = 3.0E=10;
PIE = 3.141592;
NAME = 'Stuart Little';
CHOICE = yes;
OPERATOR = '+';
Tutte le dichiarazioni di costanti devono essere fornite prima della dichiarazione di variabile.
Tipi enumerati
I tipi di dati enumerati sono tipi di dati definiti dall'utente. Consentono di specificare i valori in un elenco. Solo gli operatori di assegnazione e gli operatori relazionali sono consentiti sul tipo di dati enumerato. I tipi di dati enumerati possono essere dichiarati come segue:
type
enum-identifier = (item1, item2, item3, ... )
Di seguito sono riportati alcuni esempi di dichiarazioni di tipo enumerate:
type
SUMMER = (April, May, June, July, September);
COLORS = (Red, Green, Blue, Yellow, Magenta, Cyan, Black, White);
TRANSPORT = (Bus, Train, Airplane, Ship);
L'ordine in cui gli elementi sono elencati nel dominio di un tipo enumerato definisce l'ordine degli elementi. Ad esempio, nel tipo enumerato SUMMER, aprile viene prima di maggio, maggio viene prima di giugno e così via. Il dominio degli identificatori di tipo enumerati non può essere costituito da costanti numeriche o di caratteri.
Tipi di subrange
I tipi di sottointervallo consentono a una variabile di assumere valori che rientrano in un determinato intervallo. Ad esempio, se l' età degli elettori dovrebbe essere compresa tra 18 e 100 anni, una variabile denominata età potrebbe essere dichiarata come:
var
age: 18 ... 100;
Nella prossima sezione esamineremo in dettaglio la dichiarazione delle variabili. È inoltre possibile definire un tipo di sottointervallo utilizzando la dichiarazione del tipo. La sintassi per la dichiarazione di un tipo di sottointervallo è la seguente:
type
subrange-identifier = lower-limit ... upper-limit;
Di seguito sono riportati alcuni esempi di dichiarazioni di tipo di sottointervallo:
const
P = 18;
Q = 90;
type
Number = 1 ... 100;
Value = P ... Q;
I tipi di sottoinsiemi possono essere creati da un sottoinsieme di un tipo enumerato già definito, ad esempio:
type
months = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
Summer = Apr ... Aug;
Winter = Oct ... Dec;