CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C et SDL]Probléme File

Pwote
Pwote
Niveau 7
30 avril 2013 à 18:14:51

Voilà je suis actuellement en train de finir le tutoriel du SDZ sur le C. L'avant dernier chapitre ayant pour thème la SDL je bosse sur la SDL. Le tp de ce chapitre porte sur la réalisation d'un Sokoban. J'ai commencer la programmation hier soir et je bloque depuis quelques heures sur un problème , lors ce que j'essaye de faire appel à mon fichier contenant les données pour "Blitter" ma map sur mon écran la fonction n'affiche aucun élément ou encore plus étrange de temps en temps un mur.
J'ai alors décidé d'ajouter une gestion d'erreurs affichant la donnée reçu lors ce que le programme ne trouve aucune correspondance (Je suis pas très clair là :'( ) Comme le code vaut mieux que des explications le voilà :
http://pastebin.com/xDWP2V7N Le code qui pose problème game.h
Le reste:
http://pastebin.com/C05QT6Zt main.c
http://pastebin.com/0zPiubrk main.h
et le .txt avec la map : http://pastebin.com/gYV237en
merci d'avance

Pseudo supprimé
Pseudo supprimé 30 avril 2013 à 19:33:06

Je voudrais t'aider mais je n'arrive pas à accéder au site :(

JerryDayPonay
JerryDayPonay
Niveau 33
30 avril 2013 à 19:34:25

C'est quoi cette déclaration de tableau dans le for ligne 34 ?
D'autant plus que tu accèdes à pos[c] alors que son indice varie de pos[0] à pos[c-1].
Sinon ça tient de la forme mais en général on met uniquement les prototypes et les constantes dans les .h, les déclarations de fonctions c'est dans les .c.
De la même manière la boucle for s'utilise uniquement quand on connait le nombre précis d'itérations, dans le cas d'un test (c != EOF ici) on préfère un do/while.

godrik
godrik
Niveau 30
30 avril 2013 à 19:35:59

Tu as le droit de faire ca: SDL_Rect pos[c]; mais ici ca ne fait pas ce que tu crois. Prealloue ta memoire.

Aussi, faire des IO dans la boucle d'affichage c'est mal.

Pwote
Pwote
Niveau 7
01 mai 2013 à 00:59:48

http://pastebin.com/1TqX7wyT voilà j'ai modifier selon vos dires mon game.h.
Malheureusement le problème persiste (Le problème de pointeur (Segmentation fault). J'ai ouvert le programme à l'aide dgb https://image.noelshack.com/fichiers/2013/18/1367362666-capture-du-2013-05-01-00-50-32.png
Je vois que les motifs sont décalé mais ceci doit être une faute algorithmique, ma priorité est la faute de segmentation, qui apparemment provient d'un SDL_Surface seulement je n'arrive vraiment pas à trouver l'erreur.

godrik
godrik
Niveau 30
01 mai 2013 à 02:53:15

Affiche les valeurs de c et k que tu utilise pour blitter.

recompile avec -g -O0 et regarde la tete de la pile avec gdb (commande bt)

En passant, tu veux certainement lire ca:
http://erik.deblan.org/blog/index.php?article13/c-que-faire-en-cas-de-segmentation-fault

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment