Le costanti nel linguaggio C

Nel linguaggio C una costante è uno spazio della memoria RAM del computer in cui viene memorizzato un determinato valore numerico o alfanumerico. Si possono definire costanti intere, in virgola mobile o alfanumeriche, singoli caratteri o stringhe.

Qual è la differenza tra variabili e costanti? Il contenuto di una costante non può essere modificata dal programma. Le variabili, invece, possono essere modificate.

Per definire una costante nel linguaggio C posso utilizzare la direttiva #define o la parola chiave const

#define

Per definire una costante con #define, devo scrivere la direttiva seguita dal nome della costante e dal valore.

#define nome valore

Le direttive #define non necessitano del punto e virgola alla fine dell'istruzione.

Generalmente, le direttive vanno messe all'inizio del programma, perché sono elaborate dal compilatore in fase di pre-compilazione.

Un consiglio. Il nome di una costante può essere composto da lettere minuscole o maiuscole. Tuttavia, consiglio di scriverlo in lettere maiuscole per non confondersi con le variabili.

Esempi

Una costante numerica reale

#define PGRECO 3.14

Una costante numerica intera

#define BASE 10

Una costante stringa

#define VERSIONE '2.0b'

Const

Per definire una costante con l'istruzione const, devo indicare il formato dei dati, il nome della variabile e il valore da assegnarlo dopo il simbolo uguale.

const formato nome = valore

Essendo un'istruzione, richiede il simbolo del punto e virgola alla fine della riga.

Esempi

Una costante numerica reale

const float PGRECO=3.14;

Una costante numerica intera

const int BASE=10;

Una costante carattere

const char CATEGORIA='A'

Una costante stringa

const char VERSIONE[4]='2.0b'

Esempi pratici

Esempio 1

In questo codice sorgente ho definito una costante numerica con la direttiva #define.

#include <stdio.h>
#define PGRECO 3.14
int main()
{
printf("Il valore di pi greco è %f", PGRECO);
return 0;
}

L'output del programma è

Il valore di pi greco è 3.140000

Esempio 2

In quest'altro esempio creo la stessa costante con l'istruzione const

#include <stdio.h>
int main()
{
const float PGRECO=3.14;
printf("Il valore di pi greco è %f", PGRECO);
return 0;
}

L'output del programma è lo stesso

Il valore di pi greco è 3.140000

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Libri di approfondimento

Le variabili nel linguaggio C

Le costanti