I have the following code :
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<graphics.h>
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();
}
The code is mainly for creating a line. But when I run this program I get error message in my console(I'm using Ubuntu 10.04 version) as :
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.
Is that mean I have to add some lib to C path?
Thanks in advance.
conio.h
和graphics.h
是我认为来自Borland环境的古老的非标准接口。
For Ubuntu users the mistake is when we dont have that library. So we include a corresponding library. Type the following command in terminal:
sudo apt-get install libncurses5-dev libncursesw5-dev
change
dx=abs(x1-x2);
by this:
dx=abs(x2-x1);
try to use OPENGL
and delete the line including conio.h
, graphics.h
, getch()
, closegraph()
. Those are used by Turbo C DOS compiler and are obsolete.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.