关于bgiError:graphics not initialized的问题

本文针对在使用Borland C++进行编程时出现的bgierror图形未初始化错误进行了详细的解析。通过分析Borland C++ 3.1.vbs脚本文件和bc31.conf配置文件,解释了如何正确地设置DOSBox环境,以确保图形库能够正常工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很多同学刚做课设时就会遇到这个问题.直接照着课本写的代码.出现了bgi error:graphics notinitialized这个错误..毕竟学院抽风要用dos环境写课设


首先讲一点题外话


这个图是打包好的bc,其实这并不只是bc,还有一个dosbox软件用来模拟dos环境.我们用的bc就是运行在dosbox下的.

              每次运行bc 我们都是直接打开了这个BorlandC++ 3.1.vbs文件,这是一个windows本地的脚本文件.我们就从这个文件下手,看一看到是怎么回事.右键编辑这个文件.其中代码如下:


知道的朋友应该明白是怎么回事.简单讲一下.

意思是,先将目录调整到dosbox目录下,然后按照bc31.conf配置文件来运行dosbox


接下来我们看一看bc31.conf到底有什么

翻到最后面有一个autoexec节



一条mount命令将 DISK_C目录设置为dos环境的C盘

C:

Cd \borland\bin 

bc

这两条将当前路径调整到bin目录下

Bin目录下有BC.exe

BC 就是执行了BC.exe


所以如果你想添加一个E盘,就知道该怎么做了


到这,就应该知道了,所谓的C盘就是DISK_C目录.

所以inigraph()函数的第三个参数就是"c:\\borlandc\\bgi",而不是在windows环境下的绝对路径



为什么要写这个库? 让初学者从 Turbo C 2.0(以下简称 TC) 或 Borland C++ 3.1 开始学编程是个不错的建议,只是 TC 的环境实在太老了,复制粘贴都很不方便。有一个 Win-TC,简单用了一下,实在是个害人的东西,还不如 TC 好呢,因为它简化了所有调试的部分(或许是我没看到?),而调试是写程序相当重要的一部分。 不少老师直接拿 VC6 来讲 C 语言的,因为 VC6 的编辑和调试环境都很优秀。只可惜在 VC6 下只能做一些文字性的练习题,想画条直线画个圆都很难,还要注册窗口类、建消息循环等等,初学者会受严重打击的。许多老师让学生在 TC 下绘图,因为这的确会让人有兴趣。 所以,我想给初学者一个更好的学习环境,就是 VC6 的平台 + TC 的绘图功能,于是就有了这个库。如果您刚开始学 C 语言,或者您是一位教 C 语言的老师,那么这个东西一定会让您兴奋的。 额外说明 这个库并不适合做产品,只建议用来入门学习。如果您想做简单的绘图产品,那么 SDL 库或许更适合您。或者,直接介入 DirectX 编程吧。 安装 下载的压缩包里除了说明,只有两个主要文件,将 graphics.lib 拷贝到 VC6 文件夹下的 Lib 文件夹内,将 graphics.h 拷贝到 Include 文件夹内,仅此而已,所以我就偷懒没有做安装程序了。 使用说明 目前只把我个人理解中的初学者常用的图形函数做了一下。如果您需要更多的,请发邮件告诉我:lujianfeiccie2011@163.com,或者到我的博客提出来:http://hi.youkuaiyun.com/lujianfeiccie2009,我来完善。 使用上,基本和 TC 没什么区别。看一个画圆的例子吧: #include // 就是需要引用这个图形库 #include void main() { initgraph(640, 480); // 这里和 TC 略有区别 circle(200, 200, 100); // 画圆,圆心(200, 200),半径 100 getch(); // 按任意键继续 closegraph(); // 关闭图形界面 } 呵呵,很简单吧。具体的请看函数列表,以及程序范例。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值