C语言图形程序的应用程序的打开。

来源:百度知道 编辑:UC知道 时间:2024/07/08 12:55:26
做好的C图形动画程序,在TC界面按CRTL+F9能够运行出图形动画来。
不在TC界面,而直接双击生成的 应用程序,却不能运行出图形来。
为什么??
我已经把EGAVGA.OBJ和GOTH.OBJ等都装进GRAPHICS.LIB里面了,生成的应用程序还是不能双击运行出图形来。
要怎么办呢??

建立一个不需要驱动程序就能独立运行的可执行图形程序,Turbo C中规定用下述步骤(这里以EGA、VGA显示器为例):
1. 在C:\TC子目录下输入命令:
BGIOBJ EGAVGA
此命令将驱动程序EGAVGA.BGI转换成EGAVGA.OBJ的目标文件。

2. 在C:\TC子目录下输入命令:
TLIB LIB\GRAPHICS.LIB+EGAVGA
此命令的意思是将EGAVGA.OBJ的目标模块装到GRAPHICS.LIB库文件中。
3. 在程序中initgraph()函数调用之前加上一句:
registerbgidriver(EGAVGA_driver):
该函数告诉连接程序在连接时把EGAVGA的驱动程序装入到用户的执行程序中。

经过上面处理,编译链接后的执行程序可在任何目录或其它兼容机上运行。
例:
#include<stdio.h>
#include<graphics.h>
int main()
{
int gdriver=DETECT,gmode;
registerbgidriver(EGAVGA_driver): / *建立独立图形运行程序 */
initgraph( gdriver, gmode,"c:\\tc");
bar3d(50,50,250,150,20,1);
getch();
closegraph();
return 0;
}
编译链接后产生的执行程序可独立运行。
如不初始化成EGA或CGA分辨率, 而想初始化为CGA分辨率, 则只需要将上述步骤中有EGAVGA的地方用CGA代替即可。