我的TC运行带图形的程序时生成了.exe文件,但运行它时它却只闪了一下,这是怎么回事啊?

来源:百度知道 编辑:UC知道 时间:2024/09/21 06:59:24
运行编译都没错!
其它程序都没问题只有带图形的才有问题,如我运行一个俄罗斯方块游戏我以前在学校里机房里都有结果,但我机子上只是闪了一个,然后什么也没有了,程序都没得问题的。

比如:
#include <stdio.h>
void main() {
int n = 0;
printf("hello world\r\n");
scanf("%d", &n);
}

看一下hello world会不会被输出。

先用BGIOBJ.exe 将你用的图形库(.bgi文件)编译成obj:
BGIOBJ EGAVGA.BGI

然后 需要将生成的obj文件加入到graphics.lib中去:
tlib graphics + EGAVGA.obj

上面的两步在命令提示符下完成(最好在全屏模式的command.com下完成)

最后在源代码中还需要用registerbgidriver()函数,来告诉TC编译器在连接的时候要连接BGI驱动。
这里有registerbgidriver()的源程序示例:

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main(void)
{

int gdriver = DETECT, gmode, errorcode;

/* register a driver that was added into graphics.lib */
/* For information on adding the driver, see the
/* BGIOBJ section of UTIL.DOC */
errorcode = registerbgidriver(EGAVGA_driver);

/* report any registration errors */
if (er