Compilador Online C++ - Execute, Teste e Depure Instantaneamente
Escreva, compile e execute código C++ instantaneamente no seu navegador com nosso compilador online gratuito de C++. Perfeito para aprender, testar rapidamente e se preparar para entrevistas — sem necessidade de configuração ou instalação.
💡 Guia Básico de C++ para Iniciantes
1. Declarando Variáveis e Constantes
C++ requer que você declare o tipo de cada variável. Use const
para definir valores somente leitura que não podem ser alterados após a inicialização.
int age = 30;
double pi = 3.14159;
char grade = 'A';
std::string name = "Alice";
bool isActive = true;
// Constantes
const int MAX_USERS = 100;
const std::string COMPANY = "CodeUtility";
// Tentar modificar uma const causará um erro em tempo de compilação
// MAX_USERS = 200; // ❌ erro
2. Condicionais (if / switch)
Use if
, else if
, else
para ramificações. Use switch
para múltiplos valores.
int x = 2;
if (x == 1) {
std::cout << "Um\n";
} else if (x == 2) {
std::cout << "Dois\n";
} else {
std::cout << "Outro\n";
}
// Switch-case
switch (x) {
case 1:
std::cout << "Um\n";
break;
case 2:
std::cout << "Dois\n";
break;
default:
std::cout << "Outro\n";
}
3. Loops
Use for
, while
, e do-while
para repetir blocos de código.
for (int i = 0; i < 3; i++) {
std::cout << i << "\n";
}
int n = 3;
while (n > 0) {
std::cout << n << "\n";
n--;
}
4. Arrays
Arrays armazenam múltiplos elementos do mesmo tipo.
int numbers[3] = {10, 20, 30};
std::cout << numbers[1] << "\n";
5. Manipulação de Array/Vetor
Use std::vector
para arrays dinâmicos.
#include <vector>
std::vector nums = {1, 2, 3};
nums.push_back(4);
nums.pop_back();
for (int n : nums) {
std::cout << n << " ";
}
6. Entrada/Saída de Console
Use std::cin
para entrada e std::cout
para saída.
std::string name;
std::cout << "Digite seu nome: ";
std::cin >> name;
std::cout << "Olá, " << name << "\n";
Placeholder
7. Funções
Funções agrupam lógica reutilizável. Use parâmetros e tipos de retorno.
int add(int a, int b) {
return a + b;
}
std::cout << add(3, 4);
8. Mapas
std::map
armazena pares chave-valor como dicionários.
#include <map>
std::map ages;
ages["Alice"] = 30;
std::cout << ages["Alice"];
9. Tratamento de Exceções
Use try
e catch
para lidar com erros em tempo de execução.
try {
throw std::runtime_error("Erro ocorrido");
} catch (const std::exception& e) {
std::cout << e.what();
}
10. Entrada/Saída de Arquivo
Use fstream
para ler e escrever em arquivos.
#include <fstream>
std::ofstream out("file.txt");
out << "Olá Arquivo";
out.close();
std::ifstream in("file.txt");
std::string line;
getline(in, line);
std::cout << line;
in.close();
11. Manipulação de Strings
Strings em C++ suportam métodos como length()
, substr()
, e find()
.
std::string text = "Olá Mundo";
std::cout << text.length();
std::cout << text.substr(0, 5);
std::cout << text.find("Mundo");
12. Classes e Objetos
C++ suporta programação orientada a objetos usando classes.
class Person {
public:
std::string name;
Person(std::string n) : name(n) {}
void greet() { std::cout << "Oi, eu sou " << name; }
};
Person p("Alice");
p.greet();
13. Ponteiros
Um ponteiro armazena o endereço de memória de outra variável. Use &
para obter um endereço,
e *
para desreferenciar (acessar o valor no endereço).
int x = 10;
int* ptr = &x;
std::cout << "Valor de x: " << x << "\n";
std::cout << "Endereço de x: " << ptr << "\n";
std::cout << "Valor do ponteiro: " << *ptr << "\n";
// Modificar x através do ponteiro
*ptr = 20;
std::cout << "x atualizado: " << x << "\n";