[ Foro de C++ ]

graphics?

31-Dec-2019 12:34
Invitado (jesus++)
3 Respuestas

Saludos, quiero utilizar la libreria graphics y resulta que la he descargado y seguido los ejemplos que aparecen en youtube. Utilizo compilador dev-c++. Resulta que el ejemplo que viene para testear la aplicacion si funciona.
Ahora si copio programa y lo pego en un proyecto nuevo me da error:

C:\c++\collect2.exe [Error] ld returned 1 exit status
C:\c++\SinNombre2.o SinNombre2.cpp:(.text+0x136): undefined reference to `circle'.

El codigo ejemplo que funciona bien:

#include<graphics.h>
#include<conio.h>
#include<dos.h>

main()
{
  int gd = DETECT, gm, x, y, color, angle = 0;
  struct arccoordstype a, b;
  initgraph(&gd, &gm, "C:\\TC\\BGI");
  delay(2000);                                                                
  while(angle<=360)
  {
 
     setcolor(BLACK);
     arc(getmaxx()/2,getmaxy()/2,angle,angle+2,100);
     setcolor(RED);
   
     getarccoords(&a);
     circle(a.xstart,a.ystart,25);
     setcolor(BLACK);
     arc(getmaxx()/2,getmaxy()/2,angle,angle+2,150);
     circle(300,400,80);
     getarccoords(&a);
     setcolor(GREEN);
     circle(a.xstart,a.ystart,25);
     angle = angle+5;
     delay(50);
  }
  getch();
  closegraph();
}




31-Dec-2019 13:42
Nacho Cabanes (+84)

Esa librería graphics no es de Dev-C++, sino de Turbo C / Borland C++, para MS-DOS.


31-Dec-2019 21:10
Jorge d r (+1)

Has incluido la librería al proyecto?
Si no es así aquí lo explican:
https://elrincondelc.com/foros/viewtopic.php?t=2953
Ahora no puedo mirar más que estoy con el móvil ya miraré más en casa.
Saludos


02-Jan-2020 10:56
Nacho Cabanes (+84)

No basta con incluir una librería. Mira esta línea:

initgraph(&gd, &gm, "C:\\TC\\BGI");

De librerías cono "conio" hay versiones para Dev-C++, pero de graphics para MS-DOS, no le va a ser fácil encontrarla. Casi es preferible cambiar de compilador para hacer pruebas como esas...






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)