让C/C++图形程序独立运行

原创 2005年02月26日 14:11:00
  C/C++语言提供了十分丰富的图形函数,图形函数文件为Graphics.h,使用图形函数前须先将屏幕设置为图形模式,C/C++语言提供了下面的函数:
  void far initgraph(int far *GD,int far *GM,char *P);
  其中,GD和GM分别表示图形驱动程序和图形模式,P指图形驱动程序所在的目录路径。
  图形驱动程序由Borland公司(对于Turbo C和Borland C++)提供,同时C/C++语言还提供了退出图形状态的函数closegraph(),格式为:
  void far closegraph(void);
  许你经常在用C/C++语言编写一些图形程序,但是总不能脱离C/C++语言环境独立运行,我们怎样来解决呢?下面是实现图形程序独立运行的具体步骤:
  1.将驱动程序EGAVGA.BGI转换成目标文件EGAVGA.OBJ:
  C:/TC>BGIOBJ EGAVGA
  按同样的办法,将字体文件*.CHR转换成目标文件*.OBJ:
  C:/TC>BGIOBJ TRIP
  C:/TC>BGIOBJ LITT
  C:/TC>BGIOBJ SANS
  C:/TC>BGIOBJ GOTH
  2.将上述建立的OBJ文件加入到GRAPHICS.LIB库文件中,具体方法如下:
  C:/TC>TLINK C:/TC/LIB/GRAPHICS.LIB+EGAVGA
  C:/TC>TLINK C:/TC/LIB/GRAPHICS.LIB+TRIP
  C:/TC>TLINK C:/TC/LIB/GRAPHICS.LIB+LITT
  C:/TC>TLINK C:/TC/LIB/GRAPHICS.LIB+SANS
  C:/TC>TLINK C:/TC/LIB/GRAPHICS.LIB+GOTH
  也可以使用TLIB、PRJ程序代替TLINK。
  3.在程序中调用initgraph()函数前,应加上如下语句:
  registerbgidriver(EGAVGA-driver);
  它通知连接程序把EGAVGA驱动程序装入用户的执行程序中,同样在装入字体文件之前要加上如下语句:
  registerbgifont(字体文件名);
  4.通过上述处理后,编译连接后的执行程序就可以在任何目录下运行了。这时,将屏幕初始化为图形模式的函数可改写为:
  void InitGra(void)
  {int GD=DETECT,GM;
  registerbgidriver(EGAVGA_driver);
  registerbgifont(triplex_font);
  registerbgifont(small_font);
  registerbgifont(sansserif_font);
  registerbgifont(gothic_font);
  initgraph(&GD,&GM,"");
  }
  按照以上步骤,就能实现图形程序的独立运行

C++ 图结构邻接矩阵简单实现

c++ 图结构邻接矩阵简单实现#ifndef GRAPHMAT_H #define GRAPHMAT_H#include using namespace std;#define MAX_VERTEX...
  • chenxl929
  • chenxl929
  • 2017年03月31日 21:04
  • 1988

第二章 从一个最简短的C++程序讲起

1 简单的屏幕输出小程序#include int main() { std::coutx; std::cout
  • yongchaocsdn
  • yongchaocsdn
  • 2017年02月25日 14:22
  • 3823

让C/C++图形程序独立运行

  C/C++语言提供了十分丰富的图形函数,图形函数文件为Graphics.h,使用图形函数前须先将屏幕设置为图形模式,C/C++语言提供了下面的函数:  void far initgraph(int...
  • Tunix126
  • Tunix126
  • 2006年10月15日 13:19
  • 592

C++程序后台运行代码

int InitDaemon() { pid_t pid; // 1.转变为后台进程 if ((pid = fork() ) != 0 ) exit( 0); // 2.离开原先的进...
  • wvtear
  • wvtear
  • 2016年01月19日 14:44
  • 604

C/C++ 图的基本操作

数据结构—图的基本操作:添加节点、为有向图/无向图添加邻接矩阵、打印邻接矩阵、深度优先遍历、广度优先遍历等...
  • shangguanyunlan
  • shangguanyunlan
  • 2016年10月23日 11:09
  • 1447

用VS制作简单dll的过程 C和c++版本

创建dll的过程其实并不难,但是MDN上明确表示对于C++制作的dll支持的不好,因此要使用的dll必须是C语言规范的,于是我就打算用VC6.0来做这个dll。做了整整一下午,不断的查阅资料,终于还是...
  • txpp520
  • txpp520
  • 2017年05月18日 23:54
  • 586

Linux下如何编译、运行C、C++程序?

Linux   中最重要的软件开发工具是   GCC。GCC   是   GNU   的   C   和   C++   编译器。实际上,GCC   能够编译三种:C、C++   ...
  • e_wsq
  • e_wsq
  • 2014年11月07日 16:09
  • 5379

Eclipse 运行C/C++

不想装VS,好大,所以就直接在Eclipse上装插件运行C++好了。 1)直接参照Eclipse下编写C++程序——CDT环境搭建,讲得非常详细。 2)如果发现自己...
  • sdjianfei
  • sdjianfei
  • 2016年05月16日 21:40
  • 2531

c/c++成长之捷径

c/c++成长之捷径           c++成长之路不再迷茫!           不知不觉中进入计算机行业已有多个年头了,回首往事依然历历在目。今天我把我这段时间收集的书...
  • zhaodan19861107
  • zhaodan19861107
  • 2014年05月20日 11:20
  • 5328

C/C++ 图像二进制存储与读取

在深度学习时,制作样本数据集时,需要产生和读取一些二进制图像的数据集,如MNIST,CIFAR-10等都提供了适合C语言的二进制版本。本文介绍了C/C++语言进行图像二进制存储与读取的方法。...
  • YhL_Leo
  • YhL_Leo
  • 2016年03月02日 21:19
  • 8418
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:让C/C++图形程序独立运行
举报原因:
原因补充:

(最多只允许输入30个字)