Compilatore C++ Online - Esegui, Testa e Debugga Istantaneamente
Scrivi, compila ed esegui codice C++ istantaneamente nel tuo browser con il nostro compilatore C++ online gratuito. Perfetto per imparare, testare rapidamente e prepararsi per colloqui — nessuna configurazione o installazione necessaria.
💡 Guida ai Fondamenti di C++ per Principianti
1. Dichiarazione di Variabili e Costanti
C++ richiede di dichiarare il tipo di ogni variabile. Usa const
per definire valori di sola lettura che non possono essere modificati dopo l'inizializzazione.
int age = 30;
double pi = 3.14159;
char grade = 'A';
std::string name = "Alice";
bool isActive = true;
// Costanti
const int MAX_USERS = 100;
const std::string COMPANY = "CodeUtility";
// Tentare di modificare una const causerà un errore in fase di compilazione
// MAX_USERS = 200; // ❌ errore
2. Condizionali (if / switch)
Usa if
, else if
, else
per ramificare. Usa switch
per valori multipli.
int x = 2;
if (x == 1) {
std::cout << "Uno\n";
} else if (x == 2) {
std::cout << "Due\n";
} else {
std::cout << "Altro\n";
}
// Switch-case
switch (x) {
case 1:
std::cout << "Uno\n";
break;
case 2:
std::cout << "Due\n";
break;
default:
std::cout << "Altro\n";
}
3. Cicli
Usa for
, while
, e do-while
per ripetere blocchi di codice.
for (int i = 0; i < 3; i++) {
std::cout << i << "\n";
}
int n = 3;
while (n > 0) {
std::cout << n << "\n";
n--;
}
4. Array
Gli array memorizzano più elementi dello stesso tipo.
int numbers[3] = {10, 20, 30};
std::cout << numbers[1] << "\n";
5. Manipolazione di Array/Vettori
Usa std::vector
per array dinamici.
#include <vector>
std::vector nums = {1, 2, 3};
nums.push_back(4);
nums.pop_back();
for (int n : nums) {
std::cout << n << " ";
}
6. Input/Output da Console
Usa std::cin
per l'input e std::cout
per l'output.
std::string name;
std::cout << "Inserisci il tuo nome: ";
std::cin >> name;
std::cout << "Ciao, " << name << "\n";
Segnaposto
7. Funzioni
Le funzioni raggruppano logica riutilizzabile. Usa parametri e tipi di ritorno.
int add(int a, int b) {
return a + b;
}
std::cout << add(3, 4);
8. Mappe
std::map
memorizza coppie chiave-valore come i dizionari.
#include <map>
std::map ages;
ages["Alice"] = 30;
std::cout << ages["Alice"];
9. Gestione delle Eccezioni
Usa try
e catch
per gestire errori a runtime.
try {
throw std::runtime_error("Si è verificato un errore");
} catch (const std::exception& e) {
std::cout << e.what();
}
10. Input/Output da File
Usa fstream
per leggere e scrivere su file.
#include <fstream>
std::ofstream out("file.txt");
out << "Ciao File";
out.close();
std::ifstream in("file.txt");
std::string line;
getline(in, line);
std::cout << line;
in.close();
11. Manipolazione di Stringhe
Le stringhe in C++ supportano metodi come length()
, substr()
, e find()
.
std::string text = "Hello World";
std::cout << text.length();
std::cout << text.substr(0, 5);
std::cout << text.find("World");
12. Classi & Oggetti
C++ supporta la programmazione orientata agli oggetti usando le classi.
class Person {
public:
std::string name;
Person(std::string n) : name(n) {}
void greet() { std::cout << "Ciao, sono " << name; }
};
Person p("Alice");
p.greet();
13. Puntatori
Un puntatore memorizza l'indirizzo di memoria di un'altra variabile. Usa &
per ottenere un indirizzo,
e *
per dereferenziare (accedere al valore all'indirizzo).
int x = 10;
int* ptr = &x;
std::cout << "Valore di x: " << x << "\n";
std::cout << "Indirizzo di x: " << ptr << "\n";
std::cout << "Valore dal puntatore: " << *ptr << "\n";
// Modifica x tramite puntatore
*ptr = 20;
std::cout << "x aggiornato: " << x << "\n";