`
wanguangru
  • 浏览: 19331 次
  • 性别: Icon_minigender_2
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论

TC2.0 在winxp下initgraph崩溃原因以及解决方法

 
阅读更多

   
  
  用rectangle()函数。
  你得TC放在自文件夹了。你放在根目录下。
  int gmode=0;
  initgraph(&gdriver,&gmode,"");
  另外, 使用图形函数时要确保有显示 
  器图形驱动程序*BGI, 同时将集成开发环境Options/Linker中的Graphics lib选为on, 只有这样才能保证正确使用图形函数。
  用TC写BGI图形编程的代码时,最容易出现 BGI Error 的问题,例如在屏幕上提示这样一行字: Graphics not initialized (use 'initgraph') 然后程序就退出了。在WIN98下这行字能够看到,但是在WIN2000或WINXP下就闪一下这行字(实际上这行字在WIN2K或XP下会显示出来的,只不过时间太短了你看不到罢了)直接退出了。这行字是什么意思呢?从字面上理解,就是没有initgraph啊?但是程序的代码里面确实是写了initgraph啊?这样的出错提示,的确让很多编程者摸不着头脑。实际上,它的问题并不出在没有使用initgraph上,是你没有使用正确的路径。
  TC BGI提供了一个graphics.h,一个graphics.lib,一堆.bgi文件和一个bgiobj.exe。就当前问题来说,是.bgi导致了你的错误出现。例如最常见的
  int gd=VGA,gm=VGAHI;
  initgraph(&gd,&gm,"c:\tc20");
  来说,它的意思是initgraph使用gd为bgi驱动包,该驱动包里使用gm的屏幕模式初始化,最后一个参数就是该bgi驱动包的位置。例如上面的代码,就是说使用VGA模式(该模式驱动包含于egavga.bgi),使用其中的VGAHI方式(640*480 16 color)初始化屏幕,该驱动包位于"c:\tc20"目录下。你会问如果egavga.bgi不在"c:\tc20"下呢?那么 Graphics not initialized (use 'initgraph') 的问题就出现啦!
  但是指定bgi路径总不太好,不可能每个人的电脑上都在"c:\tc20"下有你需要的bgi文件。把bgi文件拷贝到你指定的路径如"c:\tc20"下也显得太麻烦。有没有好的解决方法呢?有,下面就是两种通常的解决方法:
  方法一:
  使用相对路径。相对路径你也许不知道,在次也不必来龙去脉把相对路径的使用说得特别清楚。简单地说,就是initgraph的最后一个字符串使用空"",然后生成的EXE,将自动在同级目录下找对应的bgi来运行。就上一个程序打个比方,把它最后一个字符串写成空串"",如:
  int gd=VGA,gm=VGAHI;
  initgraph(&gd,&gm,"");
  这样一来,只要程序目录下有egavga.bgi,就可以运行。如果你是在c:\tc20下的TC集成环境里运行的,那么只需要把egavga.bgi拷贝到c:\tc20下即可。如果你又把你所生成的EXE文件拷贝到桌面上,也只需要把egavga.bgi拷贝到桌面上你的程序即可运行啦。总之一句话:使用这种方法,须保证你EXE使用的bgi文件与你生成的EXE文件同目录。
  方法二:
  使用win-TC编译环境
  更方便的是,WIN-TC提供了模板的功能,其中的一个就是"BGI图形编程模板"。使用该模板生成的EXE,如果是用ega或vga模式的话,连.bgi文件都可以不需要来直接运行你的EXE啦,也就是说,如果你要把你的BGI图形EXE程序让别人去运行,即使是没有装TC的电脑上,也只需要一个EXE就能成功初始化BGI了,是不是很方便啊? 
分享到:
评论

相关推荐

    win7使用的TC2.0

    本系统可以在 win2000/winxp/vista/win7 下完美使用 Turbo C 2.0,包括图形程序。 所有环境均已经配置好,不用修改。 双击执行“Turbo C 2.0”即可。 由于虚拟了 DOS 环境,文件夹 DISK_C 就是 C:\,使用文件路径的...

    turbo c 2.0win8及64位机可用

    本系统可以在 win8 下完美使用 Turbo C 2.0,包括图形程序。 所有环境均已经配置好,不用修改。 双击执行“Turbo C 2.0”即可。 路径说明: dosbox 虚拟 DOS 环境的软件 DosBox 0.72 DISK_C 虚拟的 DOS 环境的 C:...

    Turbo C 2.0 - 图形化工具 - windows32位64位通用

    本系统可以在 win2000/winxp/vista/win7 下完美使用 Turbo C 2.0,包括图形程序。 所有环境均已经配置好,不用修改。 双击执行“Turbo C 2.0”即可。 由于虚拟了 DOS 环境,文件夹 DISK_C 就是 C:\,使用文件路径的...

    Turbo C 2.0,Turbo C 3.0, QBasic 4.5开发环境

    本工具包集成了TC 2.0,TC 3.0,QBasic 4.5版本的开发环境,由于TC 2.0,TC 3.0,QBasic 4.5是16位Dox程序,在较高版本的32位Windows以及所有的64位Windows中无法运行,鉴于当今硬件的发展以及windows 64版本日渐成为...

    BGI Error:Graphics not initialized (use 'initgraph')真正详解

    网络上到处都是解决的方法,但是对我我们这一代从未接触过DOS的新青年,或许会很茫然,就像我。按照书上介绍一共就3步即可解决问题,但是真正让我搞不明白的就是前2步,经过一系列的瞎折腾终于搞明白了。详细解决...

    Turbo C 2.00[DISK]

    WELCOME TO TURBO C 2.0 ---------------------- This README file contains important, last minute information about Turbo C 2.0. The HELPME!.DOC file on the COMMAND LINE/UTILITIES disk also answers ...

    VC调用BGI图形引擎

    让初学者从 Turbo C 2.0(以下简称 TC) 或 Borland C++ 3.1 开始学编程是个不错的建议,只是 TC 的环境实在太老了,复制粘贴都很不方便。有一个 Win-TC,简单用了一下,实在是个害人的东西,还不如 TC 好呢,因为它...

    turbo c 64位能兼容

    本系统可以在 win2000/winxp/vista/win7 下完美使用 Turbo C/C++ 3.0,包括图形程序。 所有环境均已经配置好,不用修改。 双击执行“Turbo C++ 3.0”即可。 由于虚拟了 DOS 环境,文件夹 DISK_C 就是 C:\,使用文件...

    TANCHISHE---tc

    initgraph(&gd,&gm,"c:\\tc"); cleardevice(); } /*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/ void DrawK(void) { /*setbkcolor(LIGHTGREEN);*/ setcolor(11); setlinestyle(SOLID_...

    Gluttony-snake.rar_snake

    贪食蛇,你们都懂的。请将程序中的main()函数中的 initgraph(&gdriver,&gmode,"e:\\TC") 函数中的...比如你的TC安装目录为D盘的Tools目录下的TC目录,那么上述语句改为: initgraph(&gdriver,&gmode,"d:\\Tools\\TC")

    学生信息管理系统 C语言课程设计

    还需要在DOS环境下执行两个命令,将图形驱动程序装入图形库graphics.h中: c:\tc>bgiobj egavga c:\tc>tlib lib\graphics.h + egavga.obj 2.学生信息管理系统功能要求(部分,学生可根据自己的设计思路进行完善):...

    EasyX 2013霜降版(VC 绘图库,带 graphics.h 配置包)

    这个绘图库简化了 VC 下的绘图,可以在 VC 下像 TC 那么简单的绘图(其实比 TC 还简单强大)(内附范例),使初学者也能很容易的做出来贪吃蛇、俄罗斯方块、推箱子、连连看等经典小游戏。 【官方介绍】  许多学编程...

    C语言绘图函数使用方法详解

    形窗口以及图形模式下的文本输出等函数。另外, 使用图形函数时要确保有显示 器图形驱动程序*BGI, 同时将集成开发环境Options/Linker中的Graphics lib选 为on, 只有这样才能保证正确使用图形函数。 1. 图形模式的...

    kuang tu--tc

    initgraph(&gdriver,&gmode,"."); setbkcolor(BLACK); } void initscene() { FILE *fp; fp=fopen("E:\\123.txt","r+"); fscanf(fp,"%d,%d,%d,%d\n",&a,&b,&c,&d); i=0; while((fgets(buffer,100,fp))...

    qiang ---tc

    initgraph(&gdriver,&gmode,"."); setbkcolor(BLACK); cleardevice(); fp=fopen("E:\\123.txt","rt"); fscanf(fp,"%d,%d,%d,%d\n",&a,&b,&c,&d); i=0; while(fgets(buffer,100,fp)!=NULL) { for(k=0;...

    EasyX图形库

    可惜在 VC 下只能做一些文字性的练习题,想画条直线画个圆都很难,还要注册窗口类、建消息循环等等,初学者会受严重打击的。初学编程想要绘图就得用 TC,很是无奈。 3. 还有计算机图形学,这门课程的重点是绘图算法...

    C语言课程设计-基于c和c++实现公共交通行程管理系统+课程设计报告PDF+功能实现流程图.zip

    本系统可以在 win2000/winxp/vista/win7 下完美使用 Borland C/C++ 3.1,包括图形程序。 所有环境均已经配置好,不用修改。 双击执行“Borland C++ 3.1”即可。 由于虚拟了 DOS 环境,文件夹 DISK_C 就是 C:\,使用...

    Turbo C 2.01[DISK]

    o You must use the Version 2.0 or 2.01 libraries with the 2.01 compilers. o The Integrated Development Environment no longer displays the message "Press any key to return to Turbo C..." when your...

    C语言库函数代码(内容详尽的源代码)

    C语言函数大全,已包含绝大部分的函数。每个函数包含函数名,功能,用法,举例,内容详尽的源代码。

    c/c++用easyx写扫雷.zip

    有直接可以用的exe文件和图片及源代码,下载即可开始玩(图片要保持与文档在同一文件夹内)

Global site tag (gtag.js) - Google Analytics