我创建了一个绘制矩形的程序,但是一旦启动,就会弹出一个窗口并说:“不幸的是,程序已停止”。为什么会这样?我能做些什么来解决它?
#include <iostream>
#include <graphics.h>
int main() {
initwindow(500, 300);
getch();
rectangle(200, 100, 200, 100);
closegraph();
}
您尚未使用 InitGraph() 启动图形引擎
http://www.programmingsimplified.com/c-graphics-programming-tutorial
就像 OpenGL、Direct3D、SDL 等都有初始化函数一样,BGI 有 InitGraph(),你必须使用它,甚至绘制一个简单的点!
那是因为您很可能在Win7或更新的操作系统上运行旧的 16 位MS-DOS应用程序,这不是一个好主意(并且在 x64 位上甚至不再工作)。即使您使用的是 32 位编译器,Borland BGI也是 16 位的。问题的另一种可能性是错误的 gfx BGI 驱动程序,我没有看到在任何地方进行初始化(我错过了使用但更新的真正使用过的BGI,所以我可能是错的)。那么该怎么办:initgraph
paths+filename
最多66
字符!!!)