bon merci
mais jai encore quelque probleme . ..
voila jai lier : SDL.lib , SDLmain.lib et SDL.dll
et jai mis les fichier . h dans un fichier qui se trouve dans le repertoire de mon projet ( [...] projetsdl/sdl)
et sa me donne comme probleme :
[linker error] undefined reference to ´_alloca_probe´ ( trois fois) , [built error] [project1.exe] error 1
ma source et celle dun tutorial sur prografix ( je lai copier alors je n´est pas toucher au code
/* Inclusion des entetes nessaires */
/* Librairie standard */
- include < stdlib.h>
/* Pour utiliser SDL */
- include " SDL/SDL.h"
/* Pointeur sur la surface reprentant l´eran */
SDL_Surface *screen = NULL;
/* Le buffer de positions de la souris */
- define MAX_MOUSE_POS 20
Uint16 mouse_x[MAX_MOUSE_POS];
Uint16 mouse_y[MAX_MOUSE_POS];
Uint16 mouse_pos = 0;
/* Fonction d´affichage principale */
static void draw()
{
SDL_Rect rect;
Uint32 color;
Uint16 index;
/* Deinition de la couleur noire afin d´effacer l´ecran*/
color = SDL_MapRGB ( screen->format, 0, 0, 0);
SDL_FillRect(screen,NULL,color);
/* Deinition de la couleur bleu pour afficher les carre */
color = SDL_MapRGB ( screen->format, 0, 0, 255);
/* Affichage de tous les carre */
for(index = 0; index < MAX_MOUSE_POS ; index++)
{
/* Description du carre: 5 de la position indique par le buffer */
rect.w = 5;
rect.h = 5;
rect.x = mouse_x[index];
rect.y = mouse_y[index];
SDL_FillRect ( screen, &, color);
}
/* On utilise du double buffer, on change donc de buffer afin d´afficher */
SDL_Flip ( screen);
}
int main ( int argc, char **argv)
{
int done;
/* Initialisation de la partie Video de SDL */
if ( SDL_Init ( SDL_INIT_VIDEO) < 0)
/* En cas d´echec, sortie */
exit ( 1);
/* Lorsque le programme se termine, il ferme SDL correctement */
atexit(SDL_Quit);
/* Demande d´affichage en 640x480 16 bits */
/* SDL_SWSURFACE : la surface est cree en RAM systeme */
/* SDL_DOUBLEBUF : on utilise deux buffers */
screen = SDL_SetVideoMode ( 640, 480, 16, SDL_SWSURFACE | SDL_DOUBLEBUF);
/* En cas d´echec, on sort */
if ( screen == NULL)
exit ( 2);
/* Titre de la fenetre */
SDL_WM_SetCaption ( "Serpent", NULL);
/* Boucle principale */
done = 0;
while ( !done)
{
SDL_Event event;
/* Lecture des elements dans la queue d´elements */
while ( SDL_PollEvent ( &))
{
switch ( event.type)
{
/* Evenement de fermture d´application, on sort la boucle */
case SDL_QUIT:
done = 1;
break;
/* Evenemnt de mouvement de la souris, on enregistre la nouvelle position */
case SDL_MOUSEMOTION:
mouse_x[mouse_pos] = ( (SDL_MouseMotionEvent*)&)->x;
mouse_y[mouse_pos] = ( (SDL_MouseMotionEvent*)&)->y;
mouse_pos++;
if(mouse_pos == MAX_MOUSE_POS)
mouse_pos = 0;
break;
}
}
/* Affichage l´ecran */
draw ( );
}
return 0;
}
merci d´avance ; ) si vous pouvez m´aider a regler mon probleme...
ps : dsl pour les faute dans ma source quand jai copier la osurce certain caractere etait ilisible . ..