---
title: "C++ 编程环境准备"
description: "从环境准备到 STL，系统学习 C++ 编程的基础知识。"
---

> Documentation Index
> Fetch the complete documentation index at: https://cppguide.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# C++ 编程环境准备

![](https://img.dailyup.xyz/originals/8208463141258-291d8f4c-0e59-4387-8bb8-e2711f7201e4.png)

> 工欲善其事，必先利其器

以前听过一句话，学习编程的人（尤其自学），80% 的人是死在了各种编程环境的安装与配置上，而不是编程本身。当时觉得这句话有点夸张，自从开始教他人学习编程后，在这一点上的体会越来越深。

大部分人学习编程，一开始接触到的教程或书籍很可能一开始都是带着大家去进行开发环境的安装与配置，以 C++ 为例，通常会介绍不同环境（Windows、MacOS、Linux）下的安装配置，比如先会安装 C++ 编译器，比如 GCC：

- 在 Linux 下安装 GCC
- 在 MacOS 安装 Xcode 环境
- 在 Windows 通过安装 MinGW 来使用 GCC

然后在不同的开发工具，如 Visual Studio 或 Xcode 或 Dev C++，再通过这些工具的配置来完成 C++ 编程环境的准备。

**基本上这个过程就把很多人拒之门外了，快速从入门到放弃，真是可惜！**

因此我们在刚开始学习像 `Python` 或 `C++` 这样的纯代码编程语言时，推荐可以直接使用一些不需要任何安装配置的在线编程环境，现在这样的在线编程工具已经很好用了。在学习一段时间，对编程语言已经有一定熟悉度，再去尝试切换到那些「更专业」编程工具。

## 在线编程环境

下面推荐两个还不错的支持 C++ 编译执行的在线编程工具。

### One Compiler

地址：[OneCompiler](https://onecompiler.com/cpp) 。下图是打开的 `C++` 编辑界面（注：开启了 Dark 模式与全屏效果）。

![](https://img.dailyup.xyz/optimized/8208463135964-4809d39f-ebe6-480c-92df-6147d526894b.png)

国外的一个在线编程工具，该网站设计非常简洁，无须注册，打开即可开始使用，可以生成代码的分享链接，永久有效。你能想到的绝大部分编程语言该网站都支持，非常方便。

> 免费注册登录后，所有运行的文件会直接保存在用户下面，方便留存。

我自己在线上讲课时，主力使用该网站服务进行教学。本书的绝大部分代码也是在 OneCompiler 上完成的。强烈推荐！

### Programiz

地址：[Online C++ Compiler (programiz.com)](https://www.programiz.com/cpp-programming/online-compiler/) 也支持多种编程语言，下图展示的是 C++ 代码。

![](https://img.dailyup.xyz/optimized/8208463128946-f9203286-6c43-410c-937f-3ddba013c783.png)

也是一个国外的在线编程工具，该网站不仅提供编程工具，还提供了一系列免费的编程教程，而且质量也非常高。

## 离线开发环境

离线开发环境也有很多，这里也只列举了一部分，大家可以自行搜索下载安装去试用。如果要参加信息学竞赛，推荐使用 Code::Blocks。

### Dev-C++

老牌 C++ 集成开发环境（IDE），很多早期的信竞选手都在使用这个工具练习，只有 Windows 版本。

![](https://img.dailyup.xyz/optimized/8208463138297-1e141b10-17f3-4a29-a81d-1291f8fdccfa.png)

### 小熊猫 Dev-C++

官方网站：[小熊猫C++](http://royqh.net/redpandacpp/)

![](https://img.dailyup.xyz/originals/8208463134855-13be7c9f-ee97-49fc-842c-9709345841ec.gif)

由于目前 Dev-C++ 于 2005 年就停止更新了，国内有个人爱好者在此基础上建了一个分支，命名为 [小熊猫 Dev-C++]，完善了不少功能，也支持 Mac，非常适合国内的个人使用和学习。

### Code::Blocks

官方网站：[Code::Blocks](https://www.codeblocks.org/)

![](https://img.dailyup.xyz/optimized/8208463132231-6b08fcca-cbc7-4dd7-997d-740dd27b1c26.png)

Code::Blocks 是一个开放源码的全功能跨平台 C/C++ 集成开发环境。

目前在信息学竞赛官方的编程环境 NOI Linux 2.0 中，也集成了 Code::Blocks，因此从平滑过渡的角度来说，当从在线编程工具切换到离线工具时，选择 Code::Blocks 也是很不错的。（推荐）

> 注：Code::Blocks 的最新版还没有对应的 Mac 版本支持。


### CP Editor

官方网站：[CP Editor](https://cpeditor.org/)

![](https://img.dailyup.xyz/optimized/8208463132482-ae9c3656-1b7c-413c-a28c-0deed892a9f0.jpg)

不像其它很多集成开发环境，主要是为了工程开发设计的，CP Editor 是一款专门为算法竞赛设计的集成开发环境（IDE），它甚至可以从一些算法竞赛的网站上获取样例，方便进行代码提交与测试，整个界面的设计也比较舒服。

## 小结

初学者建议直接使用在线编程工具，不要因为编程环境的问题阻碍了编程的学习，根据需求后面慢慢过渡到一些离线编程工具，如果要参加信息学竞赛，建议还要熟悉一些 Linux 终端命令的操作与使用，至少熟悉一种 NOI Linux 2.0 系统里支持的编程环境，具体的信息请参考附录的Linux常见指令操作及C++命令行编译与执行。

Source: https://cppguide.xyz/basic/tools/index.mdx
