parse error in allegro beispielprogramm
-
Hi Leute,
zum Test von Allegro hab ich einfach das Beispielprogramm verwendet:#include <allegro.h>
int main (int argc, char *argv[])
{
allegro_init ();
install_keyboard ();
set_color_depth (16);
set_gfx_mode (GFX_AUTODETECT, 640,480,0,0);
BITMAP *my_pic;
my_pic = load_bitmap ("bild1.bmp", NULL);acquire_screen ();
.
.
.
}
END_OF_MAIN ();Ich arbeite mit dem djgpp und er meldet mir folgenden Fehler in der Zeile
BITMAP my_pic;
parse error befor ''Ich sehe in meinem Programm keinen Fehler, kann mir jemand helfen ?
-
hier ein testbeispiel, das funktioniert für allegro unter djgpp.
pfade, die eingestellt sein müssen zu einfacheren handhabung(ich habe ne kleine batch, die ich in der konsole vorher starte) :
set PATH=D:\DJGPP\BIN SET DJGPP=D:\DJGPP\DJGPP.ENV SET LIBRARY_PATH=D:\DJGPP\LIB
abgespeichert als .c file, compiliert mit:
gcc deinname.c -o deine.exe -lalleg
folgender code:
#include <allegro.h> // You must include the Allegro Header file int main(int argc, char *argv[]) { allegro_init(); // Initialize Allegro install_keyboard(); // Initialize keyboard routines set_color_depth(16); // Set the color depth set_gfx_mode(GFX_AUTODETECT, 640,480,0,0); // Change our graphics mode to 640x480 BITMAP *my_pic; //Declare a BITMAP called my_pic my_pic = load_bitmap("deinbild.bmp", NULL); // Load our picture acquire_screen(); blit(my_pic, screen, 0,0,0,0,640,480);//Draw the whole bitmap to the screen at (0,0) release_screen(); readkey();// Wait untill a key is pressed destroy_bitmap(my_pic);//Release the bitmap data return(0);// Exit with no errors } END_OF_MAIN(); // This must be called right after the closing bracket of your MAIN function. // It is Allegro specific.
achtung: das bild in den gleichen ordner legen, und aufpassen, daß es wirklich ein bitmap ist.
so, und nu viel spaß.
-
Der Fehler liegt darin, dass
BITMAP *my_pic;
nicht am Anfang von main() deklariert wurde...
Also:
int main ()
{
BITMAP *my_pic;
allegro_init ();
.
.
.
}
-
Das Problem hat ich frueher mit dem Dev-Cpp: schau in die FAQ von Allegro, da wird der Fehler erklaert: es liegt IIRC daran, dass standardmaessig auch die windows.h inkludiert wird, und diese ebenfalls ein BITMAP-Datentyp deklariert...