Dev-C++与Turbo C++无法支持graphics.h问题求助
嘿,这个问题我太熟了!graphics.h本来是Borland Turbo C++专属的老图形库,现在新系统和新编译器对它的支持都不太友好,我给你分两个编译器分别捋捋解决方案:
Turbo C++ 无法支持
graphics.h 的解决办法 Turbo C++是DOS时代的产物,现在Windows 10/11这类64位系统对DOS程序的兼容性极差,这是核心问题。给你两个靠谱的解决方向:
- 用DOSBox模拟DOS环境
- 先下载安装DOSBox,把你的Turbo C++安装目录(比如
D:\TC)挂载到DOSBox里:打开DOSBox后输入mount c: D:\TC - 切换到挂载的盘符:输入
c:,再输入tc启动编译器,这样就能完美模拟DOS环境,graphics.h的图形功能就能正常运行了。
- 先下载安装DOSBox,把你的Turbo C++安装目录(比如
- 检查安装完整性
确认你安装Turbo C时选了完整安装,有没有漏掉BGI文件夹里的驱动文件(比如EGAVGA.BGI、VGA.BGI这些),如果缺了,找一个完整的Turbo C安装包补上这些文件。
Dev-C++ 无法支持
graphics.h 的解决办法 Dev-C++默认用的是MinGW编译器,它本身不包含Borland的graphics.h(这个库早就被淘汰了),推荐用替代方案或者手动配置:
- 安装EasyX图形库(最省心的方案,完全兼容
graphics.h语法)- 下载对应你Dev-C++位数(32/64位)的EasyX MinGW版本
- 解压后,把
include文件夹里的graphics.h复制到Dev-C安装目录的include文件夹(比如C:\Dev-Cpp\MinGW64\include),把lib文件夹里的graphics.lib复制到Dev-C的lib文件夹 - 打开Dev-C++新建项目,直接在代码里写
#include <graphics.h>就能用,编译时不需要额外配置,EasyX会自动完成链接。
- 手动配置Borland图形库(不推荐,兼容性差)
如果你非要用原版graphics.h,可以把Turbo C里的graphics.h和BGI驱动文件复制到Dev-C的include目录,然后在Dev-C++的编译器选项里添加链接参数:-lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32,但这种方法很容易出现编译错误,因为Borland的老库和MinGW编译器不兼容。
额外提一句:如果只是学习图形编程,其实更推荐用SDL、SFML这类现代图形库,但如果你必须用graphics.h,上面的方法应该能解决你的问题。
内容的提问来源于stack exchange,提问作者Avijit Mandal




