Costanti / valori letterali C ++
Le costanti si riferiscono a valori fissi che il programma non può alterare e vengono chiamate literals.
Le costanti possono essere di qualsiasi tipo di dati di base e possono essere suddivise in numeri interi, numeri in virgola mobile, caratteri, stringhe e valori booleani.
Anche in questo caso, le costanti vengono trattate come variabili regolari tranne per il fatto che i loro valori non possono essere modificati dopo la loro definizione.
Letterali interi
Un valore letterale intero può essere una costante decimale, ottale o esadecimale. Un prefisso specifica la base o la radice: 0x o 0X per esadecimale, 0 per ottale e niente per decimale.
Un valore letterale intero può anche avere un suffisso che è una combinazione di U e L, rispettivamente per unsigned e long. Il suffisso può essere maiuscolo o minuscolo e può essere in qualsiasi ordine.
Ecco alcuni esempi di valori letterali interi:
212 // Legal
215u // Legal
0xFeeL // Legal
078 // Illegal: 8 is not an octal digit
032UU // Illegal: cannot repeat a suffix
Di seguito sono riportati altri esempi di vari tipi di valori letterali interi:
85 // decimal
0213 // octal
0x4b // hexadecimal
30 // int
30u // unsigned int
30l // long
30ul // unsigned long
Valori letterali a virgola mobile
Un valore letterale a virgola mobile ha una parte intera, una virgola decimale, una parte frazionaria e una parte esponente. È possibile rappresentare valori letterali a virgola mobile in forma decimale o esponenziale.
Mentre si rappresenta utilizzando la forma decimale, è necessario includere il punto decimale, l'esponente o entrambi e mentre si rappresenta utilizzando la forma esponenziale, è necessario includere la parte intera, la parte frazionaria o entrambe. L'esponente con segno è introdotto da e o E.
Ecco alcuni esempi di valori letterali a virgola mobile:
3.14159 // Legal
314159E-5L // Legal
510E // Illegal: incomplete exponent
210f // Illegal: no decimal or exponent
.e55 // Illegal: missing integer or fraction
Valori letterali booleani
Esistono due valori letterali booleani e fanno parte delle parole chiave C ++ standard:
Un valore di true che rappresenta il vero.
Un valore di false che rappresenta falso.
Non dovresti considerare il valore di true uguale a 1 e il valore di false uguale a 0.
Letterali carattere
I caratteri letterali sono racchiusi tra virgolette singole. Se il letterale inizia con L (solo maiuscolo), è un carattere letterale ampio (ad esempio, L'x ') e deve essere memorizzato inwchar_ttipo di variabile. Altrimenti, è un carattere letterale stretto (ad esempio, "x") e può essere memorizzato in una semplice variabile dichar genere.
Un carattere letterale può essere un carattere semplice (ad es. "X"), una sequenza di escape (ad es. "\ T") o un carattere universale (ad es. "\ U02C0").
Ci sono alcuni caratteri in C ++ quando sono preceduti da una barra rovesciata avranno un significato speciale e sono usati per rappresentare come una nuova riga (\ n) o una tabulazione (\ t). Qui hai un elenco di alcuni di questi codici di sequenza di escape:
Sequenza di fuga | Senso |
---|---|
\\ | \ personaggio |
\ ' | ' personaggio |
\ " | " personaggio |
\? | ? personaggio |
\un | Allerta o campanello |
\ b | Backspace |
\ f | Avanzamento modulo |
\ n | Nuova linea |
\ r | Ritorno in carrozza |
\ t | Tabulazione orizzontale |
\ v | Scheda verticale |
\ ooo | Numero ottale da una a tre cifre |
\ xhh. . . | Numero esadecimale di una o più cifre |
Di seguito è riportato l'esempio per mostrare alcuni caratteri della sequenza di escape:
#include <iostream>
using namespace std;
int main() {
cout << "Hello\tWorld\n\n";
return 0;
}
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
Hello World
Valori letterali stringa
I valori letterali stringa sono racchiusi tra virgolette doppie. Una stringa contiene caratteri simili ai letterali carattere: caratteri normali, sequenze di escape e caratteri universali.
È possibile suddividere una lunga riga in più righe utilizzando stringhe letterali e separarle utilizzando spazi bianchi.
Di seguito sono riportati alcuni esempi di stringhe letterali. Tutte e tre le forme sono stringhe identiche.
"hello, dear"
"hello, \
dear"
"hello, " "d" "ear"
Definizione di costanti
Ci sono due semplici modi in C ++ per definire le costanti:
Utilizzando #define preprocessore.
Utilizzando const parola chiave.
Il preprocessore #define
Di seguito è riportato il modulo per utilizzare il preprocessore #define per definire una costante -
#define identifier value
L'esempio seguente lo spiega in dettaglio:
#include <iostream>
using namespace std;
#define LENGTH 10
#define WIDTH 5
#define NEWLINE '\n'
int main() {
int area;
area = LENGTH * WIDTH;
cout << area;
cout << NEWLINE;
return 0;
}
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
50
La parola chiave const
Puoi usare const prefisso per dichiarare le costanti con un tipo specifico come segue:
const type variable = value;
L'esempio seguente lo spiega in dettaglio:
#include <iostream>
using namespace std;
int main() {
const int LENGTH = 10;
const int WIDTH = 5;
const char NEWLINE = '\n';
int area;
area = LENGTH * WIDTH;
cout << area;
cout << NEWLINE;
return 0;
}
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
50
Notare che è una buona pratica di programmazione definire le costanti in MAIUSCOLO.