Salut à tous !
Je me suis mis rescemment à la librairie Allegro, que je trouve très utile !
Malheureusement, j'ai quelques problèmes majeurs :
1)pour éviter de retaper 100 fois le nom des images à charger, j'ai fait comme tout le monde, j'ai placé la chaine contenant le nom de l'image dans une variable. Le problème, c'est que lorsque j'utilise le type string, en incluant l'entête string.h, le compilateur me lance l'erreur suivante :
string is used as a type, but is not a type
(j'utilise Dev-C++)
Ensuite, quand j'utilise un tableau de type char, je le déclare comme cela :
char filename[];
puis je l'initialise :
filename[] = "test.bmp";
le compilateur me dit alors que je n'ai pas le droit de rentrer un tableau de 8 caractères dans un tableau de 0 caractères. Je ne comprend pas bien ou est mon erreur... (et je ne peux pas me permettre d'allouer 100 éléments aux tableaux en prévision de leur stockage, surtout que je doute de leur possible utilisation dans les fonctions de chargemant d'image.)
2)J'ai trouvé des fichiers en-têtes (png.h) qui semblent me permettre de charger des images png de façon similaire au chargement des bitmaps, avec la fonction load_png("nom", Palette)
Je n'ai pas réussi à la faire fonctionner, quelqu'un aurait des renseignements ?
Merci d'avance de vos réponses ^^
__________________________
Gné !
Le problème des chaînes ne vient pas d'Allégro. La librairie string.h offre des fonctions de manipulations de chaînes mais ne définit pas de type chaîne. C'est la librairie string qui s'en charger. Inclut <string> et il n'y aura pas de problèmes.
Quant à ton tableau, il faut savoir qu'il a une staille statique, celle donnée lors de sa déclaration. Or, lors de la déclaration de ton tableau, tu ne lui a pas donné de taille donc il a pris la taille 0 tout seul.
Fais comme ceci pour régler le problème :
char filename[] = "test.bmp". Au fait, filenam[]="test.bmp" ne veux rien dire du tout me semble-t-il, si tu veux rentrer une chaîne dans un tablea tu n'as pas besoin de préciser d'indice, juste l'dresse du tableau, donc filename.
Voilà pour le point 1, pour l'autre je ne connais pas Allégro.
__________________________
[col]Woufeil[/col] et respectez la charte.
c'est bien <string> que j'ai inclut, mais voyant que ça ne marchait pas, j'ai essayé avec <string.h>, puis avec <strings.h>, mais rien ne marche.
Concernant les tableaux, je pensais qu'initialiser un tableau sans taille précisée lui donnerai une taille fixe dès la première affectation de chaine, apparement faudra que je me remette dans mes bookins de C++ !
__________________________
Gné !