uni 27/09/2023
Tipo di variabile
Il tipo di variabile definisce le dimensioni della variabile, ovvero il numero di celle, quali valori può assumere e quali sono le operazioni che ci si può eseguire.
Le variabili posso essere dichiarate (assegnare un identificatore ed un tipo) e definite (allocare la memoria ed assegnare un valore). Di solito queste due operazioni vengono svolte insieme.
Tipi
I tipi si dividono in:
- fondamentali (o aritmetici):
- tipi predefiniti
- tipo intero (tipo numerico e discreto) e naturale
- reale (tipo numerico)
- booleano (discreto)
- carattere (discreto)
- tipi enumerazione
- tipi predefiniti
- derivati
si ottengono a partire dai tipi predefiniti e permettono di costruire strutture dati più complesse.
Luogo di Definizione
Se una variabile viene definita al di fuori di una funzione, viene immagazzinata nella memoria statica e viene chiamata variabile globale, che viene caricata all’avviarsi del programma e distrutta quando il programma si chiude.
Un altro modo per condividere una variabile tra funzioni è static: static int;
.
Esiste poi la memoria dinamica “Heap” Memoria Dinamica.
Condividere Variabili tra file
Per condividere una variabile va definita globalmente e con il tag external: external int variabile;
.
Intero
Reale
Booleano
In memoria
1 bit oppure , rispettivamente per falso e vero.
Operazioni
- OR logico o disgiunzione
- AND logico o congiunzione
- NOT logico o negazione
Carattere
Enumerati
Sono costituiti da insiemi di costanti intere, definite dal programmatore, ciascuna individuata da un identificatore e detta enumeratore. Servono per rappresentare informazioni non numeriche definite dal programmatore e sono utilizzate per variabili che assumono solo un numero limitato di valori.
Operazioni
Sono possibili tutte le operazioni di confronto e quelle degli interi, che agiscono sulla codifica degli enumeratori.
Esempi
enum Giorni {lun, mar, mer, gio = 7, ven, sab = 9, dom};
Giorni oggi = lun; //0
oggi += 8; //ven
cout << oggi << endl; //8, conversione implicita
enum {rosso, giallo, verde} semaforo;
semaforo = rosso;
Tipi Derivati
Costanti
In memoria
Operazioni
Una costante può solo fare da valore sinistro, non può subire operazioni di assegnazione dopo che ha ricevuto un valore.
Esempi
const int hakunamatata = 4;