<FONT size=3> C/C++语言提供了十分丰富的图形函数,图形函数文件为Graphics.h,使用图形函数前须先将屏幕设置为图形模式,C/C++语言提供了下面的函数:% i9 k5 L; Q0 Y
void far initgraph(int far *GD,int far *GM,char *P);' t+ G, a) |' o) B7 M" h" |+ a
( z( {% _4 w9 @+ K. @ 其中,GD和GM分别表示图形驱动程序和图形模式,P指图形驱动程序所在的目录路径。0 g0 K7 j( t) v, e- l3 T4 a" ^7 v
0 x! G3 j7 q" ]+ u" Y
图形驱动程序由Borland公司(对于Turbo C和Borland C++)提供,同时C/C++语言还提供了退出图形状态的函数closegraph(),格式为:' J6 I$ Z6 A0 J2 H
void far closegraph(void); , Z! E: H4 Z& h - m) Q. W, l/ v, @7 h& A/ h" Z 许你经常在用C/C++语言编写一些图形程序,但是总不能脱离C/C++语言环境独立运行,我们怎样来解决呢?下面是实现图形程序独立运行的具体步骤: 4 c1 P8 ?& G9 q# t3 Z% f4 p ) n2 o8 j. u' G" X3 q- e# A( ] 1.将驱动程序EGAVGA.BGI转换成目标文件EGAVGA.OBJ: B% e1 H4 `( e6 _
C:\TC>BGIOBJ EGAVGA + a" _0 }) [* ?) X/ H$ E- ?6 s ! w$ C6 E9 x o% G0 V 按同样的办法,将字体文件*.CHR转换成目标文件*.OBJ: t! j1 }# I5 d+ w: _( C</FONT> : S- V9 E: j: R : a4 }- Y$ f! Y* ?; F6 y c- n5 d4 U+ I; O% n* q% {: o F
<TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0>: w0 t9 q* u7 x
: s6 K" u' b: F+ W0 P
<TR> 6 i9 ]4 @, z1 Y4 f3 {' u<TD> C:\TC>BGIOBJ TRIP - X. Q s3 o4 v& Z9 v C:\TC>BGIOBJ LITT 0 I g' U# n; @% i3 r- r& J C:\TC>BGIOBJ SANS ! A2 e& G; S: p. x, W3 M/ u C:\TC>BGIOBJ GOTH</TD></TR></TABLE>$ S" q! g. q) v" \, f, N
<> 2.将上述建立的OBJ文件加入到GRAPHICS.LIB库文件中,具体方法如下:! e" y0 _6 E5 Z& h
</P>' S+ L# R, |$ Y0 q$ J
<TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0>$ J" r! c0 ~/ X! z' s6 W
" E% \ y& {* Z2 E, _: e# M<TR> 8 W3 J9 ?# R8 J$ ?6 x<TD> C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+EGAVGA , [* \' W* n5 @ C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+TRIP x: H- e6 ?* w' g' } C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+LITT , N3 Q y, M8 C* d. E i C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+SANS / `0 ~ c5 S, I& D! O, W* a C:\TC>TLINK C:\TC\LIB\GRAPHICS.LIB+GOTH</TD></TR></TABLE>9 \. D2 H" h/ C+ n0 ]
<> 也可以使用TLIB、PRJ程序代替TLINK。5 g1 `; H: X0 ]6 q' }
6 N% F+ i! S7 v G {$ t# p
3.在程序中调用initgraph()函数前,应加上如下语句:4 E. }3 j, l' o0 y
registerbgidriver(EGAVGA-driver);# r U# a# { }8 L, W
- j: w1 S* v+ g7 q0 y2 A& { 它通知连接程序把EGAVGA驱动程序装入用户的执行程序中,同样在装入字体文件之前要加上如下语句: 4 W$ O/ o0 E0 J7 q8 y/ |# v% @ registerbgifont(字体文件名); ( E3 ?$ n% Z$ T& u+ V% y$ R% K% d8 W) ?9 v; ]
4.通过上述处理后,编译连接后的执行程序就可以在任何目录下运行了。这时,将屏幕初始化为图形模式的函数可改写为:, f9 X }# j% Q7 r! w
</P>4 k5 f7 h/ \: N! k
<TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0> ; k' f% i7 g+ ]/ q' S6 U ; a2 `6 p- U, y; S# e<TR>+ O p- A$ i6 e
<TD> void InitGra(void)8 H$ d( t) H6 B$ o1 [' Q
{int GD=DETECT,GM; - ~/ z$ l% L2 O2 Y registerbgidriver(EGAVGA_driver); 2 L+ t, d5 f7 W. J J$ P% h. T registerbgifont(triplex_font);' _9 B* {' B( j" R* T/ M2 B- x
registerbgifont(small_font);. `2 Z7 t2 |6 h+ [7 q) I- X5 q% d
registerbgifont(sansserif_font);4 \% T" P4 j+ @: F+ e4 y3 z
registerbgifont(gothic_font); $ t! h1 j5 f5 k- p( n initgraph(&GD,&GM,""); |/ o# L+ \0 R% j% I/ [7 d5 A$ S
}</TD></TR></TABLE>! o7 U. ]! T/ }/ V \+ m8 U
<> 按照以上步骤,就能实现图形程序的独立运行</P>