Probleme chargement d'image
Résolu/Fermé
A voir également:
- Impossible de charger l'image haute résolution messenger
- Impossible de télécharger photos messenger - Forum Xiaomi
- Messenger: envoi impossible - Forum Facebook Messenger
- Combien y a-t-il de bateaux dans la zone de 475 pixels de large et 1000 pixels de haut à partir du coin supérieur gauche de cette image ? - Forum Photoshop
- Combien y a-t-il de bateaux dans la zone de 1500 pixels de large et 500 pixels de haut à partir du coin supérieur gauche de cette image ? - Forum Graphisme
- Cette personne n'est pas disponible sur messenger - Guide
3 réponses
[Dal]
Messages postés
6198
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2024
1 096
Modifié le 11 oct. 2021 à 16:53
Modifié le 11 oct. 2021 à 16:53
Salut patedecampagne1,
Tu ne postes pas un exemple de code minimal nous permettant de reproduire ton problème.
Le code que tu postes dans main.c est très parcellaire. Les tests qu'il fait vont systématiquement réussir, car ils consistent à tester que les variables de ton main ont bien une adresse différente de NULL. Tu ne montres pas que tu fasses une initialisation correcte de la SDL ni comment tu tentes d'afficher quelque chose au moyen de la texture que tu es censé avoir chargé, ce qui sont des conditions au succès d'un affichage quelconque.
Ensuite, tu nous donnes le code de ta fonction SDL_LoadTexture(), dans laquelle tu fais un appel à la fonction IMG_LoadTexture() qui est une fonction de la bibliothèque SDL_Image.
Si cette fonction échoue, elle va renvoyer un pointeur NULL et la fonction SDL_GetError() va renvoyer une chaîne de caractères indiquant la cause de l'erreur.
Tu devrais :
Dal
Tu ne postes pas un exemple de code minimal nous permettant de reproduire ton problème.
Le code que tu postes dans main.c est très parcellaire. Les tests qu'il fait vont systématiquement réussir, car ils consistent à tester que les variables de ton main ont bien une adresse différente de NULL. Tu ne montres pas que tu fasses une initialisation correcte de la SDL ni comment tu tentes d'afficher quelque chose au moyen de la texture que tu es censé avoir chargé, ce qui sont des conditions au succès d'un affichage quelconque.
Ensuite, tu nous donnes le code de ta fonction SDL_LoadTexture(), dans laquelle tu fais un appel à la fonction IMG_LoadTexture() qui est une fonction de la bibliothèque SDL_Image.
Si cette fonction échoue, elle va renvoyer un pointeur NULL et la fonction SDL_GetError() va renvoyer une chaîne de caractères indiquant la cause de l'erreur.
Tu devrais :
- récupérer la valeur de retour de la fonction
- tester cette valeur, et si elle est égale à NULL, afficher un message d'erreur et arrêter ton programme
(...) texture = IMG_LoadTexture(app->renderer, filename); if (texture == NULL) { fprintf(stderr, "Erreur chargement image : %s\n", SDL_GetError()); exit(EXIT_FAILURE); } return texture; }
Dal