Operatori di base e conversione dei tipi
Padroneggi gli operatori aritmetici, di confronto e logici, oltre alle conversioni implicite ed esplicite dei tipi.
Operatori di base e conversione dei tipi è una lezione C++ Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C++ Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C++ Academy include 4 lezioni in totale.
Operatori aritmetici
Gli operatori aritmetici standard sono: + - * / e il modulo %. Il modulo funziona solo sugli interi.
int a = 17, b = 5;
std::cout << a + b << "\n"; // 22
std::cout << a - b << "\n"; // 12
std::cout << a * b << "\n"; // 85
std::cout << a / b << "\n"; // 3 (integer division)
std::cout << a % b << "\n"; // 2Divisione tra interi e divisione in virgola mobile
Quando entrambi gli operandi sono interi, la divisione tronca il risultato verso zero. Converta un operando in un tipo a virgola mobile per ottenere una divisione reale.
int a = 7, b = 2;
std::cout << a / b << "\n"; // 3
std::cout << static_cast<double>(a) / b; // 3.5Incremento e decremento
++ e -- aggiungono o sottraggono uno. Il prefisso (++x) incrementa prima e poi restituisce il valore. Il postfisso (x++) restituisce il valore originale e poi incrementa.
Assegnazione composta
Combini l'aritmetica con l'assegnazione: +=, -=, *=, /=, %=. Sono più brevi e spesso più leggibili.
int total = 0;
total += 5; // total = total + 5
total *= 2; // total = total * 2Operatori di confronto
I sei operatori di confronto restituiscono bool: ==, !=, <, <=, >, >=.
Operatori logici
Combini i valori booleani con && (and), || (or) e ! (not). Usano la valutazione short-circuit: se il risultato è già determinato, il resto non viene valutato.
bool valid = (age >= 18) && (age < 120);
bool weekend = (day == "Sat") || (day == "Sun");Operatori bit a bit
Per manipolare i bit: & (and), | (or), ^ (xor), ~ (not), << (scorrimento a sinistra), >> (scorrimento a destra).
Conversioni implicite
C++ converte automaticamente tra tipi numerici in molti contesti, talvolta perdendo silenziosamente precisione. Presti attenzione alle espressioni con tipi misti.
int i = 10;
double d = i; // OK: int to double
int j = 3.7; // OK but truncates to 3static_cast: conversione esplicita
È il modo preferito per convertire tra tipi correlati. La conversione viene controllata a tempo di compilazione.
double price = 9.99;
int dollars = static_cast<int>(price); // 9Altri cast: reinterpret_cast const_cast
Esistono altri tre cast per casi speciali:
- reinterpret_cast — reinterpreta i pattern di bit (lo usi raramente)
- const_cast — rimuove const (lo usi ancora più raramente)
- dynamic_cast — cast a runtime per i tipi polimorfici
Eviti i cast in stile C
La vecchia sintassi (int)x è ambigua: può indicare uno qualsiasi dei quattro cast. Usi il cast denominato che corrisponde al suo intento.
Verifica rapida
A quale valore corrisponde 7 / 2 in C++ quando entrambi gli operandi sono int?
Riepilogo
C++ offre operatori aritmetici, di confronto, logici e bit a bit. Le conversioni implicite possono causare perdita di dati: preferisca static_cast per le conversioni esplicite ed eviti i cast in stile C.
Domande Frequenti
La lezione «Operatori di base e conversione dei tipi» è gratuita?
Sì — il testo completo di «Operatori di base e conversione dei tipi» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C++ Academy, passa a CoddyKit PRO. Il corso C++ Academy include 4 lezioni in totale.
Cosa imparerò in «Operatori di base e conversione dei tipi»?
Padroneggi gli operatori aritmetici, di confronto e logici, oltre alle conversioni implicite ed esplicite dei tipi. Eserciti C++ Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare C++ Academy?
Non è richiesta alcuna esperienza precedente. C++ Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Operatori di base e conversione dei tipi»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione C++ Academy?
Sì. Ogni lezione C++ Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Configurazione di un compilatore C++
- Hello World e processo di build
- Variabili, deduzione automatica dei tipi e constexpr
- Operatori di base e conversione dei tipi