▒ 目录 ▒
- 🛫 问题
- 描述
- 环境
- 1️⃣ 支持调试网站
- Repl.it
- OnlineGDB
- 2️⃣ 不支持调试网站
- Wandbox
- json.cn
- jdoodle
- tutorialspoint
- cppshell
- ideone
- coliru
- online-ide
- 3️⃣ 性能分析网站
- Quick C++ Benchmark
- Compare C++ Builds
- 4️⃣ 其它
- C++ Insights(学习模板、C++11等新特性的工具)
- Compiler Explorer(代码编译成汇编)
- CodeChef (多语言、学习平台)
- 🛬 结论
- 📖 参考资料
🛫 问题
描述
文中所有网址,在
结论
中有汇总。
环境
版本号 | 描述 | |
---|---|---|
文章日期 | 2023-06-14 | |
操作系统 | Win11 - 21H2 - 22000.1335 | |
Python | 3.7.1 | |
frida.exe | 15.0.18 | |
1️⃣ 支持调试网站
Repl.it
官网地址: https://repl.it/languages/cpp
- 需要登录
支持shell
,也就是说用户完全可以使用该linux服务器。- 支持调试
- 支持各种其他工具
- 支持项目概念
- 有github地址项目
OnlineGDB
官网地址: https://www.onlinegdb.com/
- 支持多种语言(各种版本C++)
- 支持
调试
运行速度很快!!!
2️⃣ 不支持调试网站
这个就不详细说了,只说一下各个网站的区别点:
- 是否支持命令行
- 是否支持不同版本c++语法
Wandbox
官网地址:https://wandbox.org/
- 支持多种编程语言,多个编译器版本在线编译运行的网站。
- 可以在这里做方便、快速地一些小实验、尝试一些编程语言的新特性,比如 C++20。
- 有github
json.cn
官网: https://www.json.cn/runcode/run_cpp920/
jdoodle
tutorialspoint
cppshell
ideone
coliru
online-ide
官网:https://www.online-ide.com/online_c++_ide
3️⃣ 性能分析网站
Quick C++ Benchmark
网站:
https://www.quick-bench.com/
作用:分析代码执行效率
- 可以快速对一些 C++ 代码片段进行 benchmark 并可视化显示出来。
- 支持多个版本的 clang 和 gcc。
- 背后用的应该是
google benchmark
这个开源库,你也可以在自己的机器上安装这个库。
示例效果:
Compare C++ Builds
网站:
https://www.build-bench.com/
作用:分析代码编译效率
可以测试、比较不同 C++ 代码的编译开销(CPU、内存、I/O)
示例地址:https://www.build-bench.com/b/47ciR2_jQ0RuAt2fy1Pnk66b3yM。
效果:
4️⃣ 其它
C++ Insights(学习模板、C++11等新特性的工具)
官网:https://cppinsights.io/
git地址:https://github.com/andreasfertig
主要用于看代码编译展开后的具体情况,是个学习 C++ 模板时不错的辅助工具。
- 有各种示例
- 将C++11等新特性翻译为中间代码,学习新特性必备工具!!!
Compiler Explorer(代码编译成汇编)
官网:https://godbolt.org/
- 支持将 C++ 代码编译成汇编代码。
- 支持多种编译器版本多种 CPU 平台(x86-64、MIPS、ARM 等)。
- 支持各种编译器(包含VS等)
CodeChef (多语言、学习平台)
- 需要注册才能使用,适合入门学习
- 没有在线ide用于在线开发C++应用
🛬 结论
工具很多,做了一下简单总结:
在线C++编译工具 |
优点
|
缺点
| 网站地址 | Github地址 | 所属公司 | 网站运营开始时间 |
---|---|---|---|---|---|---|
Repl.it | 支持多种编程语言,可以分享代码 | 需要注册账号 | online | online | Repl.it | 2011年 |
OnlineGDB | 支持调试 支持多种编程语言 | 有时会出现编译错误 | online | 无 | OnlineGDB | 2017年 |
Wandbox | 界面简洁,支持多种编程语言 | 有时会出现编译错误 | online | online | Melpon | 2013年 |
json.cn | 国内网站,访问快 | 支持功能少 | online | 无 | Json.cn | 2014年 |
JDoodle | 支持多种编程语言,可以分享代码 | 有时会出现编译错误 | online | 无 | JDoodle | 2017年 |
TutorialsPoint | 支持多种编程语言,有教程 | 界面不够友好 | online | 无 | TutorialsPoint | 2006年 |
CPPShell | 界面简洁,支持多种编程语言 | 有时会出现编译错误 | online | 无 | CPPShell | 2018年 |
Ideone | 支持多种编程语言,可以分享代码 | 有时会出现编译错误 | online | 无 | Sphere Research Labs | 2009年 |
Coliru | 界面简洁,支持多种编程语言 | 无法保存代码 | online | 无 | Stacked Crooked | 2012年 |
CodeChef | 支持多种编程语言,包括C++ 没有IDE | 界面不够友好 | online | 无 | Directi | 2009年 |
📖 参考资料
- 几个有用的 C++ 在线工具: https://zhuanlan.zhihu.com/p/264573010
- 在线C++工具(json.cn): https://www.json.cn/runcode/run_cpp920/
- 在线C++工具(runoob.com): https://c.runoob.com/compile/12/