Compilador C++ Online

My tools
No tools yet

A primeira execução requer o download de aproximadamente {size} MB do compilador, que será armazenado em cache para reutilização posterior.

Como compilar e executar código C++ online

  1. 1

    Cole código ou selecione um exemplo

    Escreva código C++ no editor ou escolha rapidamente entre exemplos predefinidos como Hello World, contêineres STL, tratamento de exceções e muito mais.

  2. 2

    Selecione o padrão C++

    Antes de executar, selecione C++11 a C++23 na barra de ferramentas para verificar sintaxe e comportamento da biblioteca padrão em diferentes padrões, por exemplo, std::format requer C++20.

  3. 3

    Clique em executar e veja os resultados

    A primeira execução requer o download de aproximadamente 29 MB do compilador Clang no navegador, que será armazenado em cache para reutilização. O resultado da execução, saída de compilação e mensagens de erro são exibidos em três abas separadas.

  4. 4

    Digite diretamente na área de saída quando necessário

    O programa pausará quando chegar a std::cin e aguardará entrada. A caixa de entrada aparecerá abaixo do conteúdo de saída. Após digitar, pressione Enter para continuar.

  5. 5

    Copie o resultado ou compartilhe o código

    Você pode copiar o código e os resultados da execução, restaurar versões anteriores do histórico local ou gerar um link compartilhável com o código para enviar a outros.

Visão geral de recursos

Compilador C++ online que compila e executa código C++ no navegador usando o Clang real, sem necessidade de instalar GCC, MSVC ou qualquer IDE. Suporta alternância entre os padrões C++11 a C++23, ideal para validar sintaxe, resolver problemas de algoritmos e demonstrações educacionais.

Descrição da ferramenta

Compilador C++ Online: compile e execute código C++ no navegador com Clang real, sem necessidade de instalar GCC, MSVC ou qualquer IDE. Suporta alternância entre os padrões C++11, C++14, C++17, C++20 e C++23, STL completo, tratamento de exceções (try/catch), ponteiros inteligentes, std::format e ranges funcionam todos, std::cin permite entrada interativa. Saída de compilação, resultado da execução e mensagens de erro são visualizados em três abas separadas, com histórico local e link para compartilhamento de código. Compilação e execução ocorrem completamente no navegador localmente, o código não é enviado para o servidor e não há fila de espera por backend.

Última atualização

Lista de capacidades

  • Alterne entre C++11, C++14, C++17, C++20 e C++23, usando o mesmo código para comparar o comportamento em diferentes padrões.
  • Biblioteca padrão completa: contêineres STL e algoritmos, ponteiros inteligentes, std::string, iostream, fstream, chrono, random e tudo mais funciona diretamente.
  • Tratamento de exceções disponível: try/catch, throw, exceções padrão lançadas por std::stoi e vector::at podem ser capturadas normalmente.
  • std::format do C++20 e ranges, bem como novos recursos do C++23, já foram verificados e funcionam corretamente.
  • std::cin suporta entrada interativa, você pode digitar diretamente na área de saída quando o programa aguarda sua entrada.
  • Saída de compilação, resultado da execução e mensagens de erro em três abas separadas. Os diagnósticos do Clang mantêm o formato original com indicadores de linha e coluna, além de sugestões de correção.
  • Compilação e execução totalmente no navegador local, o código não é enviado ao servidor nem fica na fila de espera do backend.
  • Histórico local e links para compartilhamento de código, você pode abrir o mesmo código em outro dispositivo.

Feedback dos usuários

Seu feedback será revisado (e editado se necessário) antes de aparecer publicamente. Não inclua e-mails, senhas ou outros dados pessoais.

Seu feedback nos ajuda a melhorar ❤️

Ferramentas relacionadas

Guias relacionados

Perguntas frequentes

Como esta ferramenta compila e executa C++ no navegador?
O compilador é Clang e LLD compilados para WebAssembly, executados no navegador com a biblioteca padrão WASI. Seu código é realmente compilado em binário WebAssembly e executado, não é um intérprete nem um subconjunto de sintaxe, então o comportamento da biblioteca padrão é consistente com a compilação local.
Quais padrões C++ esta ferramenta suporta?
Suporta C++11, C++14, C++17, C++20 e C++23, com alternância direta na barra de ferramentas. std::format e ranges do C++20, além dos novos recursos do C++23, já foram testados e funcionam.
Escopo de suporte para tratamento de exceções e biblioteca padrão
try/catch, throw e exceções lançadas pela biblioteca padrão funcionam normalmente, incluindo invalid_argument de std::stoi e out_of_range de vector::at. Contêineres STL e algoritmos, ponteiros inteligentes, iostream, fstream, chrono e random podem ser usados diretamente.
Capacidades atualmente não suportadas por esta ferramenta
Não suporta multithreading: std::thread, std::async e pthread não funcionam porque o tempo de execução WASI não possui suporte a threads. Também não suporta requisições de rede, execução de comandos do sistema ou código que requer APIs específicas do sistema operacional.
Tempo de espera na primeira execução e velocidade nas execuções subsequentes
A primeira execução requer o download de aproximadamente 29 MB do compilador, o que leva cerca de 5 segundos em banda larga e 10 a 35 segundos em 4G. Depois disso, o compilador será armazenado em cache pelo navegador, e as execuções subsequentes levarão apenas o tempo de compilação, normalmente entre 1 e 3 segundos.
Onde o código e o histórico são salvos
O código é compilado e executado localmente no navegador e não é enviado para o servidor. O histórico é salvo no armazenamento local do navegador, apenas você pode vê-lo, e será apagado quando você limpar os dados do navegador.