【C++】在线编译器推荐,让你随时随地编写代码

▒ 目录 ▒

    • 🛫 问题
      • 描述
      • 环境
    • 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
Python3.7.1
frida.exe15.0.18

1️⃣ 支持调试网站

Repl.it

官网地址: https://repl.it/languages/cpp

  1. 需要登录
  2. 支持shell,也就是说用户完全可以使用该linux服务器。
  3. 支持调试
  4. 支持各种其他工具
  5. 支持项目概念
  6. 有github地址项目
    在这里插入图片描述

OnlineGDB

官网地址: https://www.onlinegdb.com/

  1. 支持多种语言(各种版本C++)
    在这里插入图片描述
  2. 支持调试
    在这里插入图片描述
  3. 运行速度很快!!!

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/
作用:分析代码执行效率

  1. 可以快速对一些 C++ 代码片段进行 benchmark 并可视化显示出来。
  2. 支持多个版本的 clang 和 gcc。
  3. 背后用的应该是 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++ 模板时不错的辅助工具。

  1. 有各种示例
    在这里插入图片描述
  1. 将C++11等新特性翻译为中间代码,学习新特性必备工具!!!
    在这里插入图片描述

在这里插入图片描述

Compiler Explorer(代码编译成汇编)

官网:https://godbolt.org/

  • 支持将 C++ 代码编译成汇编代码。
  • 支持多种编译器版本多种 CPU 平台(x86-64、MIPS、ARM 等)。
  • 支持各种编译器(包含VS等)
    在这里插入图片描述
    在这里插入图片描述

CodeChef (多语言、学习平台)

  • 需要注册才能使用,适合入门学习
    在这里插入图片描述
  • 没有在线ide用于在线开发C++应用

🛬 结论

工具很多,做了一下简单总结:

在线C++编译工具
优点
缺点
网站地址Github地址所属公司网站运营开始时间
Repl.it支持多种编程语言,可以分享代码需要注册账号onlineonlineRepl.it2011年
OnlineGDB支持调试
支持多种编程语言
有时会出现编译错误onlineOnlineGDB2017年
Wandbox界面简洁,支持多种编程语言有时会出现编译错误onlineonlineMelpon2013年
json.cn国内网站,访问快支持功能少onlineJson.cn2014年
JDoodle支持多种编程语言,可以分享代码有时会出现编译错误onlineJDoodle2017年
TutorialsPoint支持多种编程语言,有教程界面不够友好onlineTutorialsPoint2006年
CPPShell界面简洁,支持多种编程语言有时会出现编译错误onlineCPPShell2018年
Ideone支持多种编程语言,可以分享代码有时会出现编译错误onlineSphere Research Labs2009年
Coliru界面简洁,支持多种编程语言无法保存代码onlineStacked Crooked2012年
CodeChef支持多种编程语言,包括C++
没有IDE
界面不够友好onlineDirecti2009年

📖 参考资料

  • 几个有用的 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/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/28572.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Hightopo 使用心得(3)- 吸附与锚点

吸附与锚点是 HT for Web 中两个比较重要的概念。这两个概念在执行交互和动画时会经常被用到。 吸附,顾名思义,是一个节点吸附到另一个节点上。就像船底的贝类一样,通过吸附到船身,在船移动的时候自己也会跟着移动;而…

pandas---缺失值的处理

1. 处理缺失值 判断数据中是否包含NaN: pd.isnull(df);pd.notnull(df) 存在缺失值nan: 删除存在缺失值的:dropna(axisrows) 不会修改原数据,需要接受返回值; 替换缺失值:fillna(value, inplaceTrue) value:替换成的值&#…

JavaScript数学对象-数字进制转换

关注“大前端私房菜”微信公众号,输入暗号【面试宝典】即可免费领取107页前端面试题。 什么是进制 进制就是达到指定位置时候进一位 常见的进制 十进制: 0 1 2 3 4 5 6 7 8 9 10 11 12 ... 99 100 101 二进制: 0 1 10 11 100 101 110 111 1000 八进制: 0 1 2 3 4 …

走进人工智能|GANs AI时代下的前卫艺术

前言: GANs的作用是以生成模型的形式学习数据分布,从而产生逼真的样本数据,可以应用于图像合成、风格转换、视频生成等领域。 文章目录 序言背景适用领域技术支持应用领域程序员如何学总结 序言 GANs(生成对抗网络)是…

ASEMI代理台湾光宝LTV-3120光耦合器中文资料

编辑-Z LTV-3120是一种高性能光耦,由于其可靠性、效率和多功能性,在各种应用中都很受欢迎。本文将全面了解LTV-3120其功能、应用以及它如何改进您的电子设计。 什么是光电耦合器? 光耦,也称为光隔离器,是一种利用光在…

Mediapipe实时3D目标检测和跟踪(自动驾驶实现)

🚀 导语 3D目标检测是根据物体的形状、位置和方向来识别和定位物体的任务。在2D目标检测中,被检测到的物体仅表示为矩形边界框。3D目标检测任务通过预测物体周围的包围框,可以获取物体的三维位置信息。 3D目标检测在各行各业都有广泛的应用。…

Flink 系列二 Flink 状态化流处理概述

本篇作为Flink系列的第二篇,第一篇是环境准备,需要的同学可以看:https://blog.csdn.net/lly576403061/article/details/130358449?spm1001.2014.3001.5501。希望可以通过系统的学习巩固该方面的知识,丰富自己的技能树。废话不多说…

jmeter模拟多用户并发

目录 前言: 一、100个真实的用户 二、100个用户同时登录 前言: JMeter可以轻松地模拟多用户并发,从而测试Web应用程序的性能和稳定性。 一、100个真实的用户 1、一个账号模拟100虚拟用户同时登录和100账号同时登录 区别 (…

运维圣经:Webshell应急响应指南

目录 Webshell简介 Webshell检测手段 Webshell应急响应指南 一. Webshell排查 二. 确定入侵时间 三. Web日志分析 四. 漏洞分析 五. 漏洞复现 六. 清除Webshell并修复漏洞 七. Webshell防御方法 Webshell简介 Webshell通常指以JSP、ASP、 PHP等网页脚本文件形式存在…

Webstorm 加载vue项目时,特别卡顿,完美解决。觉得有用加好友打赏

觉得有用加好友打赏:QQ:854138497 上图cpu直接干满。 根据上图提示,直接 disable hints,或者到下图的settings里面设置。 Code vision取消后,webstorm 明显就不卡了。记得重启webstorm。 还有一种方式,根…

组合模式(十二)

请相信自己,请再次相信自己,请一定要相信自己 上一章简单介绍了装饰者模式(十一), 如果没有看过, 请观看上一章 一. 组合模式 引用 菜鸟教程里面的 组合 模式介绍: https://www.runoob.com/design-pattern/composite-pattern.html 组合模式&#xff0…

2. CompletableFuture

2.1 Future接口理论知识复习 Future接口(FutureTask实现类)定义了操作异步任务执行一些方法,如获取异步任务的执行结果、取消异步任务的执行、判断任务是否被取消、判断任务执行是否完毕等。 举例:比如主线程让一个子线程去执行任…

电脑小白不要错过这五款小众但强大的软件

电脑上的各类软件有很多,除了那些常见的大众化软件,还有很多不为人知的小众软件,专注于实用功能,简洁干净、功能强悍。 多语言翻译——QTranslate QTranslate是一款实用的多语言翻译工具。它可以在任何应用程序中选中文本&#…

c++学习之多态

目录 1,什么是多态? 2,什么是虚函数? 1.如何实现父类对各个派生子类的操作? 2,父类指针保存子类空间产生的问题。 3,虚函数的定义 4,虚函数的动态绑定机制 5,重载&…

ESXI 环境搭建和配置

ESXI 环境搭建和配置 ESXI简介 ESXi专为运行虚拟机、最大限度降低配置要求和简化部署而设计。只需几分钟时间,客户便可完成从安装到运行虚拟机的全过程,特别是在下载并安装预配置虚拟设备的时候。 在VMware Virtual Appliance Marketplace 上有800多款…

FPC的发展及应用,软板行业未来将持续增长

FPC系列文章目录 1.什么是FPC 2.什么是R-FPC 3,FPC的基材 4.FPC基材压延铜和电解铜的区别 5,FPC的辅材 6,FPC常见的四种类型 7,FPC的生产流程简介 8,R-FPC的生产流程简介 9,FPC的发展及应用 提示&…

咖啡店小程序开发 让烟火小店更有生机

随着人们生活水平的提高和生活压力的增大,很多人都靠喝咖啡来缓解疲劳和压力,也为我们的生活增添了一丝情趣,但高峰时期排队购买一杯咖啡很浪费时间,很多赶时间的上班族不得不放弃。随着互联网技术深入到各行各业,传统…

【word wps文字】目录页码中的格式在打印或打印预览时变为和正文页码格式一样,如何调整?

一、问题背景 之前在闲鱼上,有个人找我改word排版,有一个需求就是正文页码两边需要横杠。 但是目录中显示的页码,不需要横杠。 我当时是一个一个在目录中删除横杠的,借助了查找与替换功能。 更改后,目录页码如下所…

Vscode 配置 wxWidgets 调试配置

在 .vscode 下创建 launch.json 加入以下内容 {// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid830387"version": "0.2.0","configurations&qu…

snmp默认团体名/弱口令漏洞及安全加固

一、漏洞描述 SNMP(简单网络管理协议)被广泛用于计算机操作系统设备、网络设备等领域监测连接到网络上的设备是否有任何引起管理上关注的情况。在运行SNMP服务的设备上,若管理员配置不当运行默认团体名/弱口令访问,将导致敏感信息泄露。敏感…