La dichiarazione delle costanti e delle variabili
La dichiarazione delle costanti e delle variabili
Le costanti utilizzate nel programma vengono elencate attraverso la direttiva #define, secondo la seguente sintassi:
#define nome valore
con l’identificatore della costante separato con uno spazio dal valore assegnato.
Per esempio:
#define PiGreco 3.14
#define risposta ‘s’
#define SIGLAPROV “TO”
Si noti che i valori di costanti di tipo carattere, o stringhe di caratteri, sono racchiusi tra virgolette (per esempio, la sigla della provincia di Torino, “TO”); la costante formata da un singolo carattere è racchiusa tra apici (‘s’). Per i numeri la separazione tra cifre intere e decimali è indicata dal carattere . (punto decimale).
Nella consuetudine della programmazione in C, i nomi delle costanti sono scritte in maiuscolo.
Le variabili utilizzate nel programma devono essere dichiarate, all’inizio del programma o comunque prima di essere usate, indicando il tipo e il nome assegnato alla variabile (con il punto e virgola finale):
tipo nome;
Si può anche utilizzare un’unica dichiarazione per diverse variabili dello stesso tipo, separando con la virgola i loro nomi:
tipo nome1, nome2, nome3;
I principali tipi standard delle variabili in C sono:
Tipo | Descrizione | Numero di bit utilizzati |
short int | numeri interi compresi tra –32768 e +32767 | 16 |
int | numeri interi compresi tra -2.147.483.648 e 2.147.483.648 | 32 |
long int | numeri interi compresi tra -2.147.483.648 e 2.147.483.648 | 32 |
float | numeri in virgola mobile (floating point) in singola precisione | 32 |
double | numeri in virgola mobile (floating point) in doppia precisione | 64 |
Per i dati di tipo alfanumerico, formati da più caratteri (stringhe), si utilizza una sequenza di caratteri, indicando dopo il nome della variabile, tra parentesi quadre, il numero massimo previsto per i caratteri della stringa:
char nome[n];
Esempi di dichiarazione di variabili:
int eta;
int anni;
float statura;
float AreaCerchio;
float AreaTriang;
char risposta;
char nome[30];
char CodiceFiscale[17];
L’identificatore di una variabile o di una costante è una sequenza qualsiasi di caratteri alfabetici e cifre, che inizia comunque con una lettera; si può usare anche il segno _ per definire nomi composti, per esempio area_cerchio.
È possibile anche, in fase di dichiarazione, assegnare alla variabile un valore iniziale, usando la seguente sintassi:
tipo nome = valore;
Per esempio:
int contatore = 0;
char nazione[7] = “Italia”;
Questa operazione si chiama inizializzazione di una variabile.
Il numero indicante la lunghezza della stringa nazione è aumentato di 1, perché occorre considerare il carattere terminatore di stringa \0, che viene aggiunto automaticamente.
La seguente tabella riassume tutti i tipi predefiniti di dati del linguaggio C, per i dati di tipo non numerico e per i tipi numerici, interi e non interi.
La parola unsigned indica il tipo senza segno, cioè il tipo che non può assumere valori negativi.
Tipo | Intervallo | Bit utilizzati | |
caratteri | unsigned char | Da 0 a 255 | 8 bit |
char | Da -128 a 127 | 8 bit | |
interi | unsigned short int | Da 0 a 65.535 16 bit | 16 bit |
short int | Da -32.768 a 32.767 | 16 bit | |
int | Da -2.147.483.648 a 2.147.483.647 | 32 bit | |
unsigned long int | Da 0 a 4,294,967,295 | 32 bit | |
long int | Da -2.147.483.648 a 2.147.483.647 | 32 bit | |
reali | float | Da 1,17549435 · 10-38 a 3,40282347 · 10+38 | 32 bit |
double | Da 2,2250738585072014 · 10-308 a 1,7976931348623157 · 10+308 |
64 bit | |
long double | Da 3,4 · 10-4932 a 1,1 · 10+4932 | 80 bit |
Le frasi di commento
All’interno del programma possono essere inserite righe, o paragrafi di più righe, contenenti commenti o annotazioni del programmatore, con le quali è possibile documentare il significato delle variabili o delle costanti utilizzate, oppure la funzione svolta da una parte del programma.
Le frasi di commento vengono racchiuse tra i delimitatori /* e */.
Tutto quello che viene scritto a partire dal primo delimitatore /* fino al delimitatore */ viene considerato
commento, anche se disposto su più righe.
int eta; /* età di una persona */
I commenti possono essere collocati in un punto qualsiasi del programma.
Commento all'articolo