Embarcadero Dev-C++ 下载安装与配置全指南:从零到第一个程序
发布时间:2026/9/26 9:23:13 作者:尧图编辑部 阅读量:1,286

1. 为什么还有人用 Dev-C一个被低估的轻量级选择每次在技术群里看到有人问C语言入门用什么编译器底下清一色回复 VS Code 或者 Visual Studio偶尔有人提一句 Dev-C还会被调侃上古神器。但实际情况是我身边不少带大一新生的老师、做算法竞赛培训的教练以及需要快速验证一段 C 代码逻辑的工程师电脑里依然装着 Dev-C。原因很简单它启动快、装完就能写代码、不需要折腾配置文件、不依赖网络环境。对于刚接触编程的人来说这些优点比功能强大重要得多。Embarcadero 接手后的 Dev-C 版本目前主流是 6.3 及后续更新已经和十几年前那个老版本有了本质区别。它内置了 TDM-GCC 编译器支持 C17 标准修复了大量旧版 bug界面也做了高 DPI 适配。你从 GitHub 上的 embarcadero/dev-cpp 仓库就能下载到官方发布的最新安装包。这篇文章不打算讨论Dev-C 和 VS Code 哪个好这种没有标准答案的问题而是把重点放在一件事上帮你把 Embarcadero Dev-C 从下载到配置到写出第一个能跑的程序整条链路走通并且把中间可能踩的坑提前标出来。适合读这篇内容的人包括刚学 C/C 的学生、需要给学生搭环境的老师、想找一个轻量级 IDE 做算法题的人以及那些被 VS Code 配置 launch.json 和 tasks.json 折磨过、只想安安静静写个 hello world 的开发者。下面我会按照实际操作的顺序把每一步讲清楚同时解释为什么这么做。2. 下载渠道与版本选择别在第三方站点随便抓安装包2.1 官方发布渠道的识别方法Dev-C 的安装包在网上到处都是但版本混乱程度堪称灾难。很多下载站提供的还是 2015 年之前的 5.11 版本那个版本在新系统上会出现各种兼容问题比如编译时中文乱码、调试器无法启动、高分辨率屏幕下界面模糊等。正确的做法是去 Embarcadero 在 GitHub 上的官方仓库下载。具体路径是访问 github.com/embarcadero/dev-cpp 的 releases 页面。你会看到类似Dev-Cpp 6.3 TDM-GCC 9.2.0 Setup.exe这样的文件名。这里有几个关键信息需要拆开看6.3是 Dev-C 自身的版本号TDM-GCC 9.2.0是它捆绑的编译器版本Setup表示这是安装版而非便携版。TDM-GCC 9.2.0 已经支持 C17 的大部分特性对于日常学习和刷题完全够用。注意如果你在搜索引擎里搜dev-c官网排在前面的结果很多是聚合下载站。这些站点提供的安装包可能被重新打包过存在捆绑软件的风险。认准 GitHub 仓库地址是最稳妥的方式。2.2 安装版与便携版的取舍官方发布通常提供两种形式Setup 安装版和 Portable 便携版。这两者的选择取决于你的使用场景。安装版会把文件写到 Program Files 目录注册文件关联在开始菜单创建快捷方式适合固定在一台电脑上长期使用的人。便携版解压后直接运行所有配置存在程序目录下适合放在 U 盘里带着走或者在学校机房这种没有管理员权限的环境里使用。我个人的习惯是主力开发机用安装版因为文件关联和右键菜单用起来方便给学生准备的练习环境用便携版拷贝到每台机器上解压就能用省去逐台安装的时间。如果你不确定选哪个先装安装版后面有需要再补一个便携版也不冲突。2.3 安装过程中的选项含义运行安装程序后会经历几个选择界面。第一个是语言选择选中文即可。然后是许可协议接受后进入组件选择页面。这里默认勾选的组件包括主程序、编译器、调试器、标准库头文件等建议全部保留。有一个选项叫Associate C/C files with Dev-C意思是把 .c 和 .cpp 文件的默认打开方式设为 Dev-C。如果你电脑上已经装了 Visual Studio 或 CLion这个选项可能会引起文件关联冲突。我的建议是如果你打算把 Dev-C 作为主力 C/C 编辑器就勾上如果只是临时用用可以取消勾选避免影响其他 IDE 的正常使用。安装路径建议保持默认或者改成一个不含中文和空格的路径。虽然新版本对中文路径的支持已经好了很多但在涉及编译和调试时路径中的特殊字符仍然可能引发一些难以排查的问题。这个坑我在早期版本上踩过不止一次后来养成了所有开发工具都装在纯英文路径下的习惯。3. 首次启动后的关键配置让编译和调试真正可用3.1 编译器路径的确认与手动指定安装完成后第一次启动 Dev-C它会自动检测编译器位置。正常情况下你会在底部看到编译成功之类的提示说明 TDM-GCC 已经被正确识别。但有时候因为权限问题或安装不完整编译器路径可能是空的。验证方法是点击菜单栏的工具→编译选项在弹出的窗口中查看编译器标签页。如果编译器下拉框里显示的是TDM-GCC 9.2.0 64-bit之类的字样说明配置正常。如果显示为空或者报错就需要手动指定。手动指定的步骤是点击下拉框旁边的文件夹图标浏览到 Dev-C 安装目录下的MinGW64\bin文件夹选中gcc.exe或g.exe。然后在下方的编译时加入以下命令输入框里确认有-stdc17这样的标准指定。这一步做完后点确定保存。3.2 调试器配置解决source file not compiled的前置条件很多人在网上搜dev-c安装后出现source file not compiled这个报错的根源通常不是编译器没装好而是调试器配置不正确或者源文件没有先编译就直接点了调试。Dev-C 的调试器是 GDB它需要单独配置。在工具→编译选项→程序标签页里你会看到调试器一栏。正确的路径应该指向 Dev-C 安装目录下的MinGW64\bin\gdb.exe。如果这一栏是空的调试功能就无法使用。另外要理解一个逻辑Dev-C 的调试按钮那个带虫子图标的会先检查有没有已编译的可执行文件。如果你新建了一个 .c 文件直接点调试它找不到对应的 .exe就会弹出 source file not compiled 的提示。正确的操作顺序是先按 F11编译并运行或者 CtrlF9仅编译确认编译通过后再按 F5 启动调试。这个顺序搞反了就会一直看到那个报错。3.3 字体、缩进与代码风格的调整默认的编辑器字体是 Courier New字号偏小长时间看代码容易疲劳。我一般会改成 Consolas 或者 JetBrains Mono字号调到 12 或 14。设置路径是工具→编辑器选项→显示标签页。缩进方面Dev-C 默认使用 Tab 缩进宽度是 4 个空格。如果你习惯用空格缩进很多团队规范要求这样可以在编辑器选项→基本里把使用Tab字符取消勾选然后把Tab大小设为 4。这样按 Tab 键就会插入 4 个空格。还有一个容易被忽略的设置是自动保存。在编辑器选项→自动保存里可以设置每隔几分钟自动保存一次。对于还没有养成 CtrlS 习惯的新手来说这个功能能救命。4. 从新建源文件到成功运行一个完整流程的拆解4.1 新建项目的正确姿势Dev-C 提供了两种新建方式新建源文件CtrlN和新建项目CtrlShiftN。对于单个文件的练习直接新建源文件就够了。但如果你要写一个包含多个 .c 或 .h 文件的小项目建议用新建项目的方式。新建项目时会让你选择项目类型Console Application、Windows Application、Static Library、DLL 等。学 C 语言阶段选 Console Application 就行。然后选择语言是 C 还是 C。这里要注意如果你选了 C但代码里写的是纯 C 的语法也能编译通过因为 C 兼容大部分 C 语法。但反过来如果你选了 C却用了 C 特有的语法比如cout、class就会报错。项目创建完成后Dev-C 会自动生成一个main.c或main.cpp文件里面已经写好了一个最简的框架。你可以直接在这个框架里写代码也可以删掉重新写。4.2 编译与运行的快捷键体系Dev-C 的快捷键设计比较直观记住几个常用的就能覆盖大部分操作快捷键功能使用场景F11编译并运行写完代码后一键验证CtrlF9仅编译检查语法错误不运行F5调试需要单步跟踪时使用CtrlShiftF9重新编译修改了头文件后强制全量编译F8编译当前文件多文件项目中只编译当前文件我见过很多新手写完代码后直接点工具栏上的运行按钮结果弹出一堆报错。其实更高效的做法是先用 CtrlF9 编译确认没有语法错误后再按 F11 运行。这样能把编译错误和运行时错误分开处理排查起来思路更清晰。4.3 编译日志的阅读方法编译失败时Dev-C 会在底部弹出一个编译器标签页里面是 GCC 输出的错误信息。这些信息看起来吓人但其实有固定的阅读方法。每一条错误信息通常包含三部分文件名和行号、错误类型、具体描述。比如main.c:5: error: expected ; before return意思是 main.c 第 5 行在 return 之前缺少分号。你只需要双击这条错误信息光标就会自动跳到对应的行。需要注意的是GCC 报错有时会有连锁反应。比如你漏了一个分号它可能在第 5 行报一个错然后在第 8 行、第 12 行继续报错。这时候不要慌从第一条错误开始改改完重新编译很多后续错误会自动消失。提示如果错误信息里出现中文乱码说明编译器的输出编码和 Dev-C 的显示编码不一致。可以在编译选项→编译器里找到编译时加入以下命令添加-fexec-charsetGBK试试。不过新版本一般不会有这个问题。5. 那些年我们踩过的 Dev-C 坑常见问题排查手册5.1 source file not compiled 的三种真实原因这个报错在搜索引擎里的搜索量一直很高说明它困扰了很多人。根据我的排查经验它通常对应三种情况第一种是前面提到的没有先编译就点了调试。解决办法就是先按 F11 或 CtrlF9。第二种是编译失败了但你没有注意到。Dev-C 在编译失败时不会自动弹出错误窗口只是底部状态栏会显示编译失败。如果你直接点调试它找不到可执行文件就报这个错。养成看底部状态栏的习惯能避免这个问题。第三种是杀毒软件把编译生成的可执行文件隔离了。有些杀毒软件对 GCC 生成的 exe 文件比较敏感会误判为可疑程序。解决办法是把 Dev-C 的安装目录和你的代码目录加入杀毒软件的白名单。5.2 中文乱码问题的根源与修复在 Dev-C 里写中文注释或输出中文时有时会遇到乱码。这个问题的根源是编码格式不统一。Dev-C 默认使用 ANSI 编码保存源文件而现代编辑器如 VS Code默认用 UTF-8。如果你在 VS Code 里写了一个 UTF-8 的 .c 文件用 Dev-C 打开就可能乱码。修复方法有两种一是统一用 UTF-8 编码在编辑器选项→基本里把默认编码改为 UTF-8二是在代码里避免直接写中文改用英文注释。对于需要输出中文的情况可以在程序开头加上system(chcp 65001);来临时切换控制台的编码页。5.3 调试时变量值显示异常的排查用 F5 调试时有时候鼠标悬停在变量上看到的数值和预期不符。这通常是因为编译时没有开启调试信息。检查编译选项→编译器→代码生成/优化标签页确认生成调试信息选的是Yes。另外如果你在编译时加了-O2或-O3优化选项编译器可能会重排代码顺序导致调试时变量值和源码逻辑对不上。调试阶段建议把优化级别设为-O0等程序稳定后再开优化。5.4 多文件项目的编译顺序问题当项目里有多个 .c 文件时Dev-C 默认会按照文件添加的顺序编译。如果文件之间有依赖关系比如 a.c 里调用了 b.c 中定义的函数编译顺序不对就会报未定义的引用错误。解决办法是在项目面板里调整文件顺序把被依赖的文件放在前面。或者更规范的做法是为每个 .c 文件创建一个对应的 .h 文件在 .h 里声明函数在 .c 里包含对应的 .h。这样编译器就能正确处理依赖关系不依赖文件顺序。6. 让 Dev-C 更好用的几个进阶设置6.1 代码模板与自动补全Dev-C 支持代码模板功能。在工具→编辑器选项→代码模板里你可以预设一些常用代码片段。比如我设置了一个main模板输入main后按 CtrlJ就会自动展开成完整的 main 函数框架。自动补全方面Dev-C 的补全能力比不上 VS Code 或 CLion但基本的函数名和变量名补全还是有的。按 CtrlSpace 可以手动触发补全。如果补全不生效检查编辑器选项→代码补全里的允许代码补全是否勾选。6.2 外部工具集成在 Dev-C 里调用 Git虽然 Dev-C 没有内置 Git 支持但可以通过工具→配置工具添加外部命令。比如添加一个 Git Bash 的快捷方式路径指向git-bash.exe工作目录设为当前项目目录。这样写完代码后可以直接在 Dev-C 里打开 Git Bash 提交代码不用切换到文件管理器。同样的方法可以用来集成代码格式化工具如 clang-format、静态分析工具如 cppcheck等。配置一次长期受益。6.3 主题配色与护眼设置Dev-C 默认的白底黑字在长时间编码后容易造成眼睛疲劳。在编辑器选项→语法标签页里可以自定义各种语法元素的颜色。我一般会把背景改成深色比如 RGB 40,44,52关键字用浅蓝色字符串用浅绿色注释用灰色。如果你不想手动调网上有现成的 Dev-C 主题文件可以导入。搜索dev-c theme能找到不少社区分享的配色方案。导入方法是把主题文件放到 Dev-C 安装目录的themes文件夹下然后在编辑器选项里选择。7. 关于 Dev-C 的定位与使用建议写到这里我想聊一个更本质的问题Dev-C 在今天到底适合什么人用。如果你是要做大型项目开发需要代码重构、版本控制集成、远程调试这些功能那 Dev-C 确实不是最佳选择VS Code 配合 CMake 或者 CLion 会更合适。但如果你只是要学 C 语言语法、刷算法题、验证一段小代码的逻辑Dev-C 的零配置启动优势就体现出来了。我自己的做法是电脑上同时保留 Dev-C 和 VS Code。Dev-C 用来快速验证想法、写算法题、给学生演示VS Code 用来做正式的项目开发。两者不冲突各司其职。最后分享一个我在教学中最常用的技巧给学生布置作业时直接发一个便携版 Dev-C 的压缩包让他们解压后打开就能写代码。省去了每个人单独安装配置的时间也避免了因为环境差异导致的各种奇怪问题。这个做法在机房环境里尤其好用拷贝到每台机器上五分钟就能让全班开始写代码。另外如果你在安装或使用过程中遇到了这篇内容没有覆盖到的问题建议先去 GitHub 仓库的 Issues 页面搜一下很多问题已经有现成的解决方案。Embarcadero 的维护团队对 issue 的响应速度还算及时新版本也在持续修复旧版遗留的问题。保持使用最新版本能避开很多历史坑。