如果你刚开始学C语言,或者大学教材、培训机构指定了CodeBlocks,请在下载之前把这篇看完。CodeBlocks 20.03 是一款免费开源的 C/C++ IDE,在高校实验课、算法竞赛入门圈子里用了很多年,轻量、干净、自带编译器,不至于像 Visual Studio 那样把新手吓跑。这篇文章我会把 20.03 从下载、安装到汉化的完整流程捋一遍,顺手把你大概率会踩的坑提前摆出来,希望你能少折腾一两个小时,直接进入写代码的状态。
1. 为什么新手都把CodeBlocks 20.03当入门首选环境
1.1 IDE、编译器、MinGW三者到底是什么关系
很多新手第一次看到“带MinGW的CodeBlocks安装包”时,会误以为这是某个特殊插件。实际上这里涉及三个完全不同的概念:IDE、编译器、工具链。
CodeBlocks 本身只是一个图形化开发环境,负责让你写代码、管理项目、看报错信息。它不负责把源代码变成可执行文件,真正干这活的是编译器。Windows 上常用的 C/C++ 编译器是 GCC 系列,而 MinGW 就是 GCC 在 Windows 平台上的一个发行版,里面包含 gcc.exe、g++.exe、gdb.exe 这些核心工具。
打个比方:CodeBlocks 是厨房,编译器是燃气灶,MinGW 是带燃气灶的厨房套装。只装 CodeBlocks 不装 MinGW,相当于你进了空厨房,什么都做不了。所以新手下载安装包时,一定要认准名字里带“mingw”的那个版本,它把厨房和燃气灶打包到一起了。
1.2 为什么偏偏是20.03这个版本
CodeBlocks 的版本号规则和很多软件不太一样,20.03 代表 2020 年 3 月发布的稳定版。它前面一个大版本还是 2016 年的 16.01,中间隔了好几年,所以 20.03 在很多教材、视频课、竞赛入门资料里都是默认的界面截图。
现在官网虽然还有一些 nightly builds 之类的“夜间构建版”,但那些是给开发者测试用的,功能变动频繁,不适合老老实实学习的新手。新手装环境只求一件事:稳定。20.03 在 Windows 7、Windows 10、Windows 11 上都能正常跑,网上搜教程搜出的界面也是它,你照着操作不会对不上。
1.3 和VS、Dev-C++、VC++ 6.0相比,它赢在哪
很多新生会问:为什么不用 Visual Studio?VS 确实功能强大、官方带中文,但光是安装包就几个 GB,配置 C/C++ 开发环境还要额外勾选组件,对刚接触编程的人来说负担很重。CodeBlocks 安装包一百多 MB,装完就能写第一个 hello world。
老牌的 Dev-C++ 也很简洁,但项目维护基本停滞,对 C++11 以后的新特性支持差,竞赛和课程里有时候会用到一些相对新的语法,它容易报错。VC++ 6.0 更是上古时代的产物,工程文件格式和现在主流环境完全不兼容。CodeBlocks 是这几个选项里平衡点最好的:体积小、免费、插件生态够用、编译标准跟得上,所以高校和竞赛培训班都爱选它。
2. 下载CodeBlocks安装包:选错文件等于踩坑第一步
2.1 四种常见安装包的区别
在官网或者镜像站里,你会看到一堆名字非常相似的文件。这里我建议你先学会看文件名后缀,再去点击下载按钮。
| 安装包文件名 | 是否含MinGW编译器 | 是否需要安装 | 新手推荐度 |
|---|---|---|---|
| codeblocks-20.03mingw-setup.exe | 含 | 需要安装 | 强烈推荐 |
| codeblocks-20.03-setup.exe | 不含 | 需要安装 | 不推荐 |
| codeblocks-20.03mingw-nosetup.zip | 含 | 解压即用 | 应急可用 |
| codeblocks-20.03-nosetup.zip | 不含 | 解压即用 | 不推荐 |
这里解释一下命名规律:“mingw”表示安装包内置了编译工具链,“setup”表示安装版,“nosetup”表示绿色免安装版。
新手首选就是第一行那个codeblocks-20.03mingw-setup.exe。如果你电脑没有管理员权限,或者U盘里想放一个随时能跑的版本,可以用mingw-nosetup.zip,解压到任意目录后运行 codeblocks.exe 就行,但解压目录也要保证全英文路径。
2.2 从哪个渠道下载才不会被坑
CodeBlocks 的官网是 codeblocks.org,页面里有一个 Downloads 入口,点进去后实际文件托管在 SourceForge 平台。国内访问 SourceForge 有时速度一般,遇到下载缓慢的情况,可以直接使用清华、中科大等高校的开源镜像站,搜索 CodeBlocks 目录,找到 20.03 对应的 exe 文件下载。
我必须要提醒你:不要图省事去一些“软件下载站”搜 CodeBlocks。这些第三方网站经常把安装包重新打包,塞进去全家桶、弹窗广告、甚至挖矿程序,我见过不少学生装完 CodeBlocks 桌面多了一排游戏图标。自己识别并不难:官方文件名规范、体积在一百多 MB 级别,如果一个所谓“CodeBlocks安装包”只有几十 MB 或者文件名带_xia、_soft之类的推广后缀,基本可以放弃。
2.3 安装前必须处理的三件事
第一,关闭杀毒软件的实时防护。CodeBlocks 本身没有问题,但不少安全软件对 SourceForge 下载回来的 exe 会有“未知发布者”提示,有时还会直接隔离安装包或汉化文件。建议下载和安装期间暂时关闭实时防护,装完再打开。
第二,卸载掉电脑里已有的旧版 CodeBlocks。如果你之前装过 16.01、17.12 或者其他绿色汉化版,先通过控制面板或“设置-应用”卸载干净,再把安装目录残留的文件夹手动删除。否则新旧文件混在一起,汉化文件和配置文件互相覆盖,很容易出现界面显示异常。
第三,提前规划一个安装路径。路径必须全英文,不要包含空格,更不要有中文。比如C:\CodeBlocks或D:\CodeBlocks都可以。很多人习惯装到C:\Program Files\CodeBlocks,其实也能跑,但新手后面调试程序时经常因为路径里有空格、权限受限遇到奇怪问题,不如从一开始就避开。
3. 完整安装流程:从双击到Finish的每一步
3.1 安装向导里的每一步该点什么
拿到codeblocks-20.03mingw-setup.exe之后,右键选择“以管理员身份运行”。如果 Windows 弹出 SmartScreen 提示“Windows 已保护你的电脑”,不要慌,点“更多信息”,再点“仍要运行”。这是微软对没有数字签名的开源软件的正常提示,不代表文件有毒。
进入安装向导后,流程基本是:
- 欢迎页面点击 Next。
- 许可证协议页面点击 I Agree。
- 组件选择页面保持默认勾选,继续 Next。
- 选择安装目录时,手动改成你提前规划好的英文路径。
- 是否创建桌面图标等选项按个人习惯勾选,我也建议把“Add to PATH”之类的选项看清楚再决定。
- 点击 Install,等待进度条走完。
- 取消勾选“Launch CodeBlocks after finishing installation”,然后点 Finish。
为什么我建议第一次启动不要勾选?因为汉化文件要提前放到位,这样你第一次打开就能直接设置中文界面,不用来回重启两次。如果你打算先看看英文界面也行,顺序无所谓,但下面几步早晚都要做。
3.2 组件选择为什么不能乱取消
在组件选择页面,默认会勾上 CodeBlocks 主程序和 MinGW 编译器套件两个大项。有些人看英文界面觉得无所谓,把看起来陌生的 MinGW 取消掉,装完才发现编译不了任何东西。MinGW 里包含 gcc、g++、gdb 三样核心工具,少一个都会让后续编译体验非常难受。
如果你用的是空间有限的电脑,也不要试图精简组件来省空间。CodeBlocks 本身不大,MinGW 占的空间也就几百 MB,这点成本换来省心,非常值。另外把.c和.cpp文件关联到 CodeBlocks 也很方便,双击源码文件就能直接打开,新手操作起来更顺手。
3.3 安装过程中可能出现的意外情况
安装进度条卡住不动是所有新手最容易慌的时刻。多数情况下这不是死机,而是杀毒软件正在扫描、或者安装程序在写系统关联项,耐心等两三分钟。如果超过五分钟没动静,可以把安装程序退出,关闭杀毒软件后再跑一次。
还有一种是安装到最后提示“安装目录不存在或没有写入权限”。如果你选的路径在 C 盘系统保护区,或者当前用户不是管理员账户,就会遇到这个。解法很简单:换到 D 盘或者 C 盘根目录下的自定义文件夹,保证当前用户有完全控制权限即可。
4. 首次启动、编译器检查与第一个程序
4.1 启动后弹出的自动检测窗口
安装完成后打开 CodeBlocks,它会弹出一个 “Compiler auto-detection” 对话框,通常显示检测到 GNU GCC Compiler。这是 CodeBlocks 在自动查找 gcc.exe,正常情况下直接点 OK 就行。
如果这个对话框没有自动弹出,或者弹出来但显示没有检测到任何编译器,说明安装包里 MinGW 部分可能出了问题。先别急着重装,进Settings -> Compiler -> Global compiler settings,确认左上角 “Selected compiler” 下拉框选中的是 GNU GCC Compiler。再看下方 Toolchain executables 页面,编译器安装目录是否指向你安装路径下的 MinGW 文件夹,例如D:\CodeBlocks\MinGW。
4.2 手动让CodeBlocks重新识别编译器
有时候第一次启动没检测到编译器,只是 CodeBlocks 的缓存抽风了,手动触发一次自动检测就能解决。在 Toolchain executables 页面里找到 Auto-detect 按钮,点一下,它会重新扫描默认目录和 PATH 环境变量。
如果自动检测还是找不到,就是 MinGW 真的没装上,或者 gcc.exe 不在MinGW\bin目录下。这时候去资源管理器里确认一下:D:\CodeBlocks\MinGW\bin\gcc.exe这个文件是否存在。不存在的话,只能重新运行安装包,在组件选择时确认 MinGW 是勾选状态,再补装一次。
4.3 用第一个程序验证整条链路
环境是否正常,跑一个 hello world 最直接。在 CodeBlocks 里点File -> New -> Project -> Console application,语言按课程要求选 C 或 C++,项目名称建议用全英文,比如hello,项目路径选一个干净的英文目录,比如D:\CodeProjects。
生成项目后,左侧 Management 面板能看到main.c或main.cpp文件,里面已经有一段现成的输出代码。直接按 F9 键,也就是 Build and Run,下方 Build log 窗口会闪现编译信息,然后弹出一个黑色控制台窗口显示Hello world!。
如果 F9 之后提示找不到编译器、编译失败,回来检查第 4.2 节。如果编译成功但控制台一闪而过,别急,这是后面第 6 节要讲的常见坑,原因很简单,不是你的代码写错了。
5. CodeBlocks汉化:从英文界面到中文界面的完整方案
5.1 汉化的本质是语言包和路径问题
CodeBlocks 官方没有内置中文界面,但这个问题难不倒所有人,因为它的界面基于 wxWidgets 框架,天然支持国际化。简单说,CodeBlocks 通过读取一份.mo文件来替换界面上的英文文案,这份文件就是语言包。
你只需要做两件事:第一,把中文语言包codeblocks.mo放到程序能识别的位置;第二,在设置里把语言切换成中文。放错路径、文件命名不对,都会导致下拉框里不出现中文选项,所以下面的路径细节一定要照着做。
5.2 下载匹配20.03版本的中文语言包
去 CodeBlocks 中文社区、CSDN、GitHub 或者相关技术论坛搜索“CodeBlocks 20.03 汉化包”,能找到社区成员制作的简体中文语言包。语言包是一个体积很小的.mo文件,通常只有几百 KB。
下载时注意看说明,尽量选择明确标注“支持 20.03”的那一份。不同版本之间菜单字符串有差异,你拿 16.01 的汉化包塞到 20.03 里,大概率会出现部分菜单还是英文、或者界面文字错位的情况。
另外提醒一句:如果你下载的汉化包是一个 exe 自解压文件,运行时要小心它是否捆绑了其他推广软件。尽量找直接提供.mo文件的版本,下载下来后先右键看看文件属性,确认扩展名确实是.mo再来下一步。
5.3 把语言文件放到指定目录
先进入你的 CodeBlocks 安装目录,比如D:\CodeBlocks。在这个目录下查找有没有locale文件夹。如果不存在,就自己手动新建一套目录结构:
locale\zh_CN\LC_MESSAGES\然后把下载好的语言文件改名为codeblocks.mo,复制到locale\zh_CN\LC_MESSAGES\目录下。最终路径就像这样:
D:\CodeBlocks\locale\zh_CN\LC_MESSAGES\codeblocks.mo注意几点:第一,文件夹必须是zh_CN,不能写成zh-CN或chinese,CodeBlocks 只认这个标识。第二,LC_MESSAGES是大写字母。第三,蓝绿色版或免安装版也要按照同样的目录结构放到解压目录里。
5.4 在设置里切换语言并重启
语言文件放好之后,打开 CodeBlocks。在主菜单找到Settings -> Environment,左侧选择View,右边往下找Internationalization区域,会有一个语言下拉框。点开下拉框,选择Chinese (Simplified)或类似选项,点 OK。
此时 CodeBlocks 会提示是否重启以应用语言更改,选择是。重启之后,主界面、菜单、设置项基本都会变成中文。“基本”这两个字不是随便说的,因为汉化包覆盖的是主程序界面,插件、第三方工具、某些编译日志仍然可能是英文,这很正常,不影响使用。
5.5 汉化后不生效、看不全、字体丑怎么办
很多新手装完汉化包,下拉框里还是没有中文选项,99% 是.mo文件根本没有被正确识别。请按这个顺序排查:文件是否放在locale\zh_CN\LC_MESSAGES\目录、文件名是否严格叫codeblocks.mo、扩展名是否被 Windows 篡改成了.mo.txt。在文件资源管理器里勾选“查看扩展名”再确认一遍。
如果语言选项出现了,但界面只有部分中文,优先怀疑语言包版本不匹配,去下载标注 20.03 的完整汉化包替换。如果中文界面字体发虚、难看得像某个老软件,调到Settings -> Editor -> Font,把显示字体改成微软雅黑或者宋体,观感会好很多。
如果想退回英文界面,同样的位置把语言切回Default或English就行,留在中文界面并不会影响代码编译,纯粹看你个人习惯。
6. 新手最常踩的坑:安装、编译、乱码排查实录
6.1 下载和安装阶段的故障
下载速度慢是最常见的。SourceForge 在国内访问不稳定,请直接换清华镜像、中科大镜像或阿里云镜像。我记得清华镜像的路径是https://mirrors.tuna.tsinghua.edu.cn/codeblocks/releases/20.03/,进去后选linux或windows对应目录,找codeblocks-20.03mingw-setup.exe就行。
下载完之后发现压缩包打不开、exe 双击没反应,大概率是文件损坏或者被杀毒软件隔离了。先看杀毒软件隔离区有没有恢复记录,然后关闭实时防护,重新下载一次。下载时用浏览器的默认下载器就行,别用那些界面花里胡哨的“高速下载器”,它们本身就是捆绑源头。
6.2 编译报错、找不到编译器的排查顺序
编译时提示g++.exe not found、compiler not installed、cannot find -lstdc++,先不要怀疑代码,问题几乎都在环境配置。
第一步去确认安装包是不是mingw-setup版本。如果你不小心装成了不带编译器的setup版,再重装一次带 MinGW 的版本最省事。第二步打开Settings -> Compiler -> Global compiler settings -> Toolchain executables,检查安装目录里是否还带着MinGW\bin路径。第三步点 Auto-detect,手动触发重新扫描,如果扫描结果为空,说明 gcc.exe 确实不在预期目录里。
还有一类特殊问题:CodeBlocks 在D:\我的代码\project这种中文路径下编译,偶尔会报Permission denied或者找不到头文件。这不是代码的锅,是 GCC 对路径编码支持不够稳。解决方案简单粗暴:项目目录和源码文件路径统一改成英文,哪怕目录层次深一些都没关系。
6.3 控制台输出中文乱码的最优解
这个问题几乎每个在 Windows 上用 CodeBlocks 的新手都会遇到:编辑器里中文正常,编译运行后控制台里的中文变成一堆乱码。根源是编码不一致:源码文件保存成 UTF-8,而 Windows 控制台默认用 GBK 代码页读取字符串。
给新手的建议是让 CodeBlocks 编辑器统一使用 GBK 编码。具体操作:打开Settings -> Editor -> General settings,在编码设置区域把Use encoding when opening files和Default encoding都选为Windows (CP936 / GBK)。设置完成后,新建的源码文件在保存时也按这个编码处理,控制台输出中文就能正常显示。
如果你希望源码保留 UTF-8 编码,也可以在编译器设置里加参数。路径是Settings -> Compiler -> Global compiler settings -> Compiler settings -> Other options,添加下面这行:
-finput-charset=UTF-8 -fexec-charset=GBK意思是告诉编译器,源码按 UTF-8 读入,生成的字符串常量按 GBK 输出到可执行文件。两种方案都能解决乱码,我个人推荐新手用第二种,因为 UTF-8 是更通用的编码,以后换 VS Code 或者 Linux 环境写代码不容易吃亏。
6.4 程序一闪而过、双击exe没反应
在 CodeBlocks 里按 F9 运行成功,但直接去文件夹里双击生成的 exe,窗口一闪而过,根本看不清输出。这是控制台程序的正常行为:main 函数执行完,窗口就被系统回收了。
临时解法是在代码结尾、return 0;之前加一行:
getchar();程序会等待用户敲击任意键再退出,这样窗口就不会闪没。竞赛和课程作业里不建议依赖system("pause"),它依赖 Windows 命令,可移植性差,但新手为了看输出临时用一下没问题。
6.5 常见问题速查表
| 问题现象 | 可能原因 | 解决办法 |
|---|---|---|
| 双击安装包没反应 | 文件被安全软件隔离 | 关闭实时防护,重新下载 |
| 中文界面没出现 | mo文件放错路径或文件名不对 | 检查 locale\zh_CN\LC_MESSAGES\codeblocks.mo |
| 下拉框没有中文选项 | 语言包未识别 | 文件名、目录层级、大小写逐项核对 |
| 编译提示找不到编译器 | 装成了无MinGW版本 | 重装 codeblocks-20.03mingw-setup.exe |
| 控制台输出中文乱码 | 源码编码与控制台代码页不一致 | 切换编辑器编码为GBK,或加编译参数 |
| 运行后窗口一闪而过 | 控制台程序执行结束自动关闭 | 末尾加 getchar(); |
| 项目路径中文导致编译失败 | GCC不支持跨编码路径 | 项目和文件名一律用英文 |
最后分享几条我自己的使用体会。装了这么多次 CodeBlocks,我发现真正会翻车的地方其实高度集中:安装包选错、路径带中文、汉化文件放不到位。这三个点只要控制住,整个流程十分钟就能走完。如果你是在校学生,别拖到上机课前一晚才装环境,那时候网络、杀毒、系统权限都可能和你作对。另外,CodeBlocks 的用户配置文件存储在AppData\Roaming\CodeBlocks目录下,重装系统前把它备份下来,恢复后编辑器、编译器等一堆自定义设置都不用重新调。不管你是为了应付 C 语言实验,还是想参加算法竞赛,先把环境跑顺,后面的路会顺畅很多。