Problèmes de pointeurs...
Alors voila, dans mon programme, j'ai fait ceci pour tester la position de mes sprites :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| int Menu::Pos(int numSprite, int type)
{
if((numSprite < taille) && (image[numSprite] != NULL))
{
int x = (int)&rect[numSprite].x;
int y = (int)&rect[numSprite].y;
int *returnx = &x;
int *returny = &y;
if (type == 1)
{
return -(*returnx);
}
if (type == 2)
{
return -(*returny);
}
}
} |
Et dans mon programme, il y a ça :
Code:
1 2
| PrintSDL(font,screen,500,10,"positionx : %d", menu.Pos(i, 1));
PrintSDL(font,screen,500,30,"positiony : %d", menu.Pos(i, 2)); |
(printsdl est une fonction qui affiche du texte. elle n'est pas de moi)
Et il m'affiche 0 !!! Meme si le rect est affiché completement en bas a droite de l'écran !!!
Ou est mon problème ?
Re: Problèmes de pointeurs...
et pourquoi pas tout simplement :
Code:
1 2 3 4 5 6 7 8 9 10 11
| int Menu::Pos(int numSprite, int type)
{
if((numSprite < taille) && (image[numSprite] != NULL))
{
if (type == 1)
return rect[numSprite].x;
if (type == 2)
return rect[numSprite].y;
}
return -1; // il faut bien retourner qqchose !
} |