Conversione di tipo Parte 1
Fa parte della sezione Fondamenti del percorso C++ di Coddy. Lezione 14 di 74.
La conversione di tipo è il processo che consiste nel convertire un valore da un tipo di dato a un altro.
In C++, possiamo convertire gli interi in numeri double, i numeri double in interi e altro ancora. Esistono due tipi di conversione: implicita (automatica) ed esplicita (manuale).
Per esempio Integer to Double:
Conversione implicita (automatica):
int number = 5;
double decimal = number; // diventa automaticamente 5.0
// con un calcolo
int x = 7;
double result = x / 2.0; // result è 3.5Nota: Quando dividi due valori int, C++ esegue la divisione intera: la parte decimale viene eliminata. Per esempio, 7 / 2 dà 3, non 3.5. Per ottenere un risultato decimale, almeno uno degli operandi deve essere un double (ad es., 7 / 2.0 dà 3.5).
Conversione esplicita (manuale) Double to Integer:
double decimal = 9.7;
int number = (int) decimal; // diventa 9 (la parte decimale viene troncata)
// con calcolo
double price = 19.99;
int roundedPrice = (int) price; // diventa 19Stile preferito nel C++ moderno: invece della conversione di tipo in stile C (int) decimal, è buona pratica usare static_cast<>(), che è più sicura e rende più esplicita la tua intenzione:
double decimal = 9.7;
int number = static_cast<int>(decimal); // diventa 9 (la parte decimale viene troncata)
double price = 19.99;
int roundedPrice = static_cast<int>(price); // diventa 19Nota: Sia (int) value sia static_cast<int>(value) producono lo stesso risultato in questo caso, ma static_cast<>() è l’approccio consigliato nel C++ moderno, perché rende la conversione chiaramente visibile e viene verificata dal compilatore.
Sfida
PrincipianteScrivi un programma C++ che dimostri la conversione di tipo. Esegui quanto segue:
Converti la variabile price in un int e memorizza il risultato in una nuova variabile chiamata intPrice.
Provalo tu
int intPrice = ?; // Conversione esplicita da double a int
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloIncremento/DecrementoPost-incremento/Post-decrementoAbbreviazioni aritmeticheOperatori di confrontoConfronto tra stringhe7Fondamenti di input/output
Istruzione coutIstruzione cinInserimento di stringheRipasso - Fino a 120Ripasso - Vero o falso3Variabili Parte 2
Dichiarazione del tipoConvenzioni di denominazioneRiepilogo - Inizializzare le variabiliConversione di tipo Parte 1Conversione di tipo Parte 26Decisioni
Istruzione ifIf-elseIstruzione switchOperatore condizionaleRiepilogo - If-elseIf-else annidatiEsercitati da solo: Compilatore C++ online