Retour à Outils

Compilateur C++ en ligne

My tools
No tools yet

Le premier démarrage nécessite le téléchargement d'environ {size} MB de compilateur, qui sera ensuite mis en cache et réutilisé.

Comment compiler et exécuter du code C++ en ligne

  1. 1

    Collez du code ou sélectionnez un exemple

    Écrivez du code C++ dans l'éditeur, ou commencez rapidement en sélectionnant parmi les exemples prédéfinis tels que Hello World, conteneurs STL, gestion des exceptions, etc.

  2. 2

    Choisissez la norme C++

    Avant d'exécuter, sélectionnez C++11 à C++23 dans la barre d'outils pour vérifier la syntaxe et le comportement de la bibliothèque standard selon différentes normes, par exemple std::format nécessite C++20.

  3. 3

    Cliquez sur Exécuter et consultez les résultats

    Le premier démarrage nécessite de télécharger environ 29 MB du compilateur Clang dans le navigateur, qui sera ensuite mis en cache et réutilisé. Les résultats d'exécution, la sortie de compilation et les messages d'erreur sont consultables dans trois onglets séparés.

  4. 4

    Tapez directement dans la zone de sortie quand vous avez besoin d'entrer quelque chose

    Le programme s'arrête et attend quand il atteint std::cin, la zone d'entrée apparaît sous le contenu de sortie, appuyez sur Entrée après avoir saisi pour continuer.

  5. 5

    Copier les résultats ou partager le code

    Vous pouvez copier le code et les résultats d'exécution, restaurer les versions précédentes à partir de l'historique local, ou générer un lien de partage avec le code pour l'envoyer à d'autres.

Aperçu des fonctionnalités

Compilateur C++ en ligne, compilez et exécutez du code C++ dans le navigateur avec un vrai Clang, sans installer GCC, MSVC ou aucun IDE. Supporte le basculement entre les normes C++11 à C++23, idéal pour vérifier la syntaxe, résoudre des problèmes d'algorithmes et des démonstrations pédagogiques.

Description de l’outil

Compilateur C++ en ligne : compilez et exécutez du code C++ dans le navigateur avec Clang véritable, sans installer GCC, MSVC ou aucun IDE. Prend en charge les normes C++11, C++14, C++17, C++20, C++23 avec commutation, STL complète, gestion des exceptions (try/catch), pointeurs intelligents, std::format et ranges, std::cin pour l'entrée interactive. Les résultats de compilation, d'exécution et les messages d'erreur s'affichent dans trois onglets séparés, avec historique local et liens de partage de code. La compilation et l'exécution se font entièrement localement dans le navigateur, le code n'est pas téléchargé sur le serveur et il n'y a pas de file d'attente backend.

Dernière mise à jour

Liste des capacités

  • Basculez entre C++11, C++14, C++17, C++20, C++23 et comparez le comportement du même code selon différentes normes.
  • Bibliothèque standard complète : conteneurs et algorithmes STL, pointeurs intelligents, std::string, iostream, fstream, chrono, random sont tous directement disponibles.
  • La gestion des exceptions est supportée : try/catch, throw, les exceptions standard levées par std::stoi et vector::at peuvent être correctement capturées.
  • std::format et ranges de C++20, ainsi que les nouvelles fonctionnalités de C++23 ont été vérifiés comme fonctionnels.
  • std::cin supporte l'entrée interactive, quand le programme s'arrête en attente d'entrée, vous pouvez directement taper dans la zone de sortie.
  • La sortie de compilation, les résultats d'exécution et les messages d'erreur sont consultables dans trois onglets séparés. Les diagnostics de Clang conservent le format original avec des indicateurs de ligne/colonne et des suggestions de correction.
  • La compilation et l'exécution se font entièrement localement dans le navigateur, le code n'est pas envoyé au serveur et ne fait pas la queue pour le backend.
  • Historique local et liens de partage de code, vous pouvez ouvrir le même code sur un autre appareil.

Retours utilisateurs

Votre retour sera examiné (et censuré si nécessaire) avant publication. Merci de ne pas indiquer d’adresse e-mail, de mot de passe ni d’autres données personnelles.

Vos retours nous aident à faire mieux ❤️

Outils connexes

Guides connexes

Questions fréquemment posées

Comment cet outil compile-t-il et exécute-t-il C++ dans le navigateur?
Le compilateur est Clang et LLD compilés en WebAssembly, exécutés dans le navigateur avec la bibliothèque standard WASI. Votre code est véritablement compilé en binaire WebAssembly puis exécuté, ce n'est ni un interpréteur ni un sous-ensemble syntaxique, donc le comportement de la bibliothèque standard est cohérent avec la compilation locale.
Quelles normes C++ cet outil supporte-t-il?
Supporte C++11, C++14, C++17, C++20 et C++23, basculez directement dans la barre d'outils. std::format et ranges de C++20, ainsi que les nouvelles fonctionnalités de C++23 ont tous été testés et fonctionnent.
Portée du support de la gestion des exceptions et de la bibliothèque standard
try/catch, throw et les exceptions levées par la bibliothèque standard fonctionnent normalement, y compris invalid_argument de std::stoi et out_of_range de vector::at. Les conteneurs STL et algorithmes, pointeurs intelligents, iostream, fstream, chrono et random peuvent tous être utilisés directement.
Capacités actuellement non supportées par cet outil
Le multithreading n'est pas supporté: std::thread, std::async et pthread ne peuvent pas être utilisés car le runtime WASI n'a pas de support thread. Les requêtes réseau, l'exécution de commandes système et le code nécessitant des API spécifiques au système d'exploitation ne sont pas non plus supportés.
Temps d'attente au premier démarrage et vitesse des exécutions suivantes
Le premier démarrage nécessite le téléchargement d'environ 29 MB de compilateur, qui prend environ 5 secondes en haut débit et 10 à 35 secondes en 4G. Après cela, le compilateur sera mis en cache par le navigateur, et les exécutions suivantes ne prendront que le temps de compilation lui-même, généralement 1 à 3 secondes.
Où sont stockés le code et l'historique
Le code est compilé et exécuté localement dans le navigateur et ne sera pas téléchargé sur le serveur. L'historique est sauvegardé dans le stockage local du navigateur, seul vous pouvez le voir, et il sera supprimé si vous effacez les données du navigateur.