Compilador online (recomendado)¶
Você não precisa instalar nada para acompanhar 90% do curso. Um compilador C++ online resolve.
Qual usar¶
Recomendamos o OnlineGDB: suporta C++17, tem um editor decente, mostra a saída do programa e não exige conta para uso básico. Alternativas equivalentes, caso o OnlineGDB esteja fora do ar: Programiz ou Compiler Explorer (godbolt.org) para casos avançados.
Antes de usar qualquer um deles pela primeira vez, confirme o padrão da linguagem:
- Procure uma opção de "language"/"standard" no editor.
- Selecione C++17 (ou "C++ (GCC)" com a versão mais recente disponível — quase sempre já é C++17 ou mais novo).
Como rodar um exercício¶
- Vá até a página da lista de exercícios (ex.: Lista 01) e abra o exercício.
- Clique em "copiar código" no bloco da versão de arquivo único.
- Cole tudo no editor do compilador online.
- Procure o bloco marcado como:
Só mexa dentro dele. O resto (os
// ============================================================ // ESCREVA SUA SOLUCAO AQUI // ============================================================assert()que testam sua solução) já vem pronto — não precisa (e não deve) editar. - Rode. Se a sua solução estiver certa, o programa roda até o fim e imprime:
- Se algum teste falhar, o programa para imediatamente nessa linha e mostra uma mensagem parecida com:
(o nome antes do primeiro
a.out: ex01_teste.cpp:6: int main(): Assertion `saudacao("Maria") == std::string("Ola, Maria!")' failed.:varia conforme o compilador — o que importa é o resto).ex01_teste.cpp:6diz onde parou (arquivo e linha); o texto entre aspas é a condição que falhou — compare com o que sua função deveria retornar ali. Só a primeira falha aparece; corrija-a, rode de novo, e a próxima (se houver) aparecerá.
O que não vai funcionar em compilador online¶
- Múltiplos arquivos (
.hseparado de.cpp): a maioria dos compiladores online só roda um arquivo por vez. Quando o curso chegar nesse tópico (Unidade 5, capítulo 12), você vai precisar de um ambiente que aceite múltiplos arquivos — veja a recomendação específica naquele capítulo, ou instale o ambiente local. - Leitura/escrita de arquivo real (
std::ifstream/std::ofstreamabrindo um arquivo do disco): em muitos compiladores online não há um sistema de arquivos de verdade por trás. Por isso, os exercícios testáveis da Unidade 3 testam a lógica de leitura/escrita usandostd::istringstream/std::ostringstream(que simulam um arquivo em memória e funcionam em qualquer lugar) — o exemplo com arquivo real de disco aparece só como demonstração, sem teste automático.
Dica¶
Guarde suas soluções em algum lugar (um bloco de notas, um Google Docs, um repositório pessoal no GitHub) — o compilador online normalmente não salva seu progresso entre sessões.