C图形库错误

我有以下代码:

#include #include #include #include void main() { int gd=DETECT,gm; int dx,dy,p,end; float x1,x2,y1,y2,x,y; initgraph(&gd,&gm,""); printf("\nEnter the value of x1: "); scanf("%f",&x1); printf("\nEnter the value of y1: "); scanf("%f",&y1); printf("\nEnter the value of x2: "); scanf("%f",&x2); printf("\nEnter the value of y2: "); scanf("%f",&y2); dx=abs(x1-x2); dy=abs(y2-y1); p=2*dy-dx; if(x1>x2) { x=x2; y=y2; end=x1; } else { x=x1; y=y1; end=x2; } putpixel(x,y,10); while(x<end) { x=x+1; if(p<0) { p=p+2*dy; } else { y=y+1; p=p+2*(dy-dx); } putpixel(x,y,10); } getch(); closegraph(); } 

该代码主要用于创建一条线。 但是当我运行这个程序时,我在控制台中收到错误消息(我使用的是Ubuntu 10.04版本):

test.c:2: fatal error: conio.h: No such file or directory compilation terminated. test.c:2: fatal error: graphics.h: No such file or directory compilation terminated.

这是否意味着我必须在C路径中添加一些lib?

提前致谢。

conio.hgraphics.h是我认为来自Borland环境的古老的非标准接口。

这两个标题仅限Windows。 对于getch()您可以模拟它(参见此处 ),对于graphics.h您可以安装libgraph 。

对于Ubuntu用户来说,错误就是我们没有那个库。 所以我们包括一个相应的库。 在终端中键入以下命令:

 sudo apt-get install libncurses5-dev libncursesw5-dev 

更改

 dx=abs(x1-x2); 

这样:

 dx=abs(x2-x1); 

尝试使用OPENGL并删除包括conio.hgraphics.hgetch()closegraph()在内的行。 这些由Turbo C DOS编译器使用并且已过时。