前言
本文說明 Dev-C++ 這個在大專院校廣為流傳的 C/C++ IDE,是否仍然值得使用,以及一些實際使用上的建議。
Dev-C++ 為什麼會受到注意
當時的時空背景大致如下:
- Visual C++ 價格高昂
- 當時的 MinGW 不夠友善,MSYS2 尚未出現
- 沒有 WSL 這類環境,使用 GNU/Linux 的門檻偏高
多數人其實只需要一個簡單易用、不必操作命令列,就能撰寫 C 程式並順利繳交作業的免費 IDE。在這樣的需求下,Dev-C++ 幾乎就是當時的最佳解。
當前發展
Dev-C++ 目前主要可以分為三個分支:
- Bloodshed Dev-C++:原始版本,已停止維護多年
- Orwell Dev-C++:第一個分支,後續也停止維護
- Embarcadero Dev-C++:第二個分支,穩定版本停在 2021 年
嚴格來說,Embarcadero Dev-C++ 是目前「相對最新」的版本。不過,由於舊官網的網域權重較高,搜尋結果往往仍會導向原始版本,導致不少人下載到過時的版本。
這裡並不是要替 Embarcadero 打廣告,但仍建議優先使用最新版本的 Dev-C++。關鍵原因在於其附帶的 C/C++ 編譯器版本——舊版本 IDE 所附的編譯器過於老舊,可能導致較新的語法特性無法使用,甚至無法順利編譯。
本文內容皆基於 Embarcadero Dev-C++ 的實際使用經驗撰寫,後文不再特別區分版本。
實際使用
選擇介面語言
中文介面偶爾會出現亂碼問題,建議使用英文。這是 Dev-C++ 長期存在的問題,不過不影響核心功能。
可用的語法特性
預設 C/C++ 編譯器為 TDM-GCC 9.2.0。 可用的 C 語言標準為 C17,更新的標準(C2x)支援不完整;C++ 則支援至 C++17。
以現在的標準來看並非最新,但對多數學習與基礎開發情境而言仍屬「夠用」。
若願意額外花時間設定,也可以替換為較新的 GCC / MinGW 編譯器,詳見後文。
單檔編輯
Dev-C++ 支援不建立專案,直接編輯單一 C/C++ 原始碼,並透過 F9 編譯、F10 執行,全程不需接觸命令列。
這對初學者相當友善。許多作業僅需單一檔案即可完成,在這種情境下,專案機制反而顯得多餘。
不過,仍建議將原始碼備份至雲端,例如使用 GitHub 或 GitLab 建立私有 repository。當本機發生問題時,仍可快速還原資料。
專案管理
在學習 C 語言初期,建議使用「Console Application」,並將預設語言設定為 C。此階段的重點在語法與邏輯,而非圖形介面開發。
建立專案時,需要先手動建立目錄,再進入該目錄後建立專案。這個流程不夠直觀,在使用體驗(UX)上略顯扣分。
Dev-C++ 會在背景自動產生 Makefile,但無法直接於 IDE 中編輯。這樣的設計是為了避免使用者誤改 Makefile 導致專案無法編譯,因此刻意將其隱藏。
進階使用
客製 Makefile
雖然 Dev-C++ 背後使用 Make,但並不建議自行為其撰寫 Makefile,通常應交由 IDE 自動生成。
原因在於 Dev-C++ 所產生的 Makefile 幾乎不具可攜性,離開原本的電腦環境後通常無法使用。
以下為節錄範例:
CPP = g++.exe
CC = gcc.exe
WINDRES = windres.exe
OBJ = main.o
LINKOBJ = main.o
LIBS = -L"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib" -L"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/x86_64-w64-mingw32/lib" -static-libgcc
INCS = -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include"
CXXINCS = -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include/c++"
BIN = DemoProject.exe
CXXFLAGS = $(CXXINCS)
CFLAGS = $(INCS)
DEL = C:\Program Files (x86)\Embarcadero\Dev-Cpp\devcpp.exe INTERNAL_DEL
可以看到多數路徑與參數皆為硬編碼(hard-coded),一般使用者也難以自行重建。這類 Makefile 僅適用於當前環境,幾乎無法移植至其他系統。
在雲端儲存專案
Dev-C++ 的專案檔本質上是文字檔。理論上,透過撰寫 .gitignore 排除目的檔與執行檔等 artifact,確實可以將專案上傳至 GitHub、GitLab 等平台。
然而,由於專案檔與 Makefile 本身缺乏可攜性,即使上傳至雲端,可重用性仍然有限,本質上更接近將版本控制工具當作雲端硬碟使用。
更換編譯器版本
Dev-C++ 支援更換編譯器,但僅限於 GCC / MinGW 系列。以下以 MSYS2 提供的 GCC 為例。
透過 Chocolatey 安裝 MSYS2:
> choco install msys2
更新系統:
$ pacman -Syu
安裝 UCRT 版本 GCC:
$ pacman -S mingw-w64-ucrt-x86_64-toolchain
完成後,實際撰寫程式仍可在 Dev-C++ 內進行,只需在:
「Tools」→「Compiler Options」→「Directories」
中調整以下路徑(需保持一致):
- Binaries
- Libraries
- C/C++ Includes
以下為範例設定:
- Binaries:
C:\tools\msys64\ucrt64\bin - Libraries:
C:\tools\msys64\ucrt64\lib - C/C++ Includes:
C:\tools\msys64\ucrt64\includeC:\tools\msys64\ucrt64\lib\gcc\x86_64-w64-mingw32\15.2.0\include
需注意第二個 Include 路徑與 GCC 版本綁定,版本更新後需自行調整,不建議直接照抄。
設置結果可參考下圖:

程式碼自動排版
可透過 AStyle 進行程式碼排版,並依個人偏好調整格式風格。此部分屬於開發習慣問題,本文不再展開。
結語
對於程式設計初學者而言,Dev-C++ 仍是一套簡單、易上手的免費 IDE。
但需理解,它並非 Embarcadero 的核心產品,因此未來大幅更新的可能性不高,更可能維持在「穩定可用但不持續進化」的狀態。
補充一點:Embarcadero 的核心產品其實是 Pascal / Delphi。雖然 Delphi 已非主流,但在企業內部工具或傳統 CRUD 應用上仍有其便利性。不過,整體而言,不建議將 Delphi 作為入門首選。