Bonsoir
Voilà je travaille sur un ptit projet de jeu et en particulier sur un algorithme A*. Cet algorithme effectue enormement de travail avec des noeuds donc des structures et la gestion de memoire devient difficile devant le nombre exponentiel de noeuds a comparer. Mais enfin bref si je parle de noeud et de memoire c'est parce que j'ai l'impression que mon problème est lié à sa.
Alors je travaille sous Solaris, et j'utilise DDD pour debug mon programme, j'ai fait un main dans un test.c et j'ai declaré quelques valeurs tests dans celui ci. A chaque etape du code je fais un printf du genre 'On arrive au probleme, sous DDD le programme semble s'executer correctement et gdb m'affiche mes printf sans probleme. Le programme se termine bien d'apres lui d'ailleurs ( si on ne pousse pas loin la recherche de l'algo, c'est a dire sa profondeur definie dans mon main).
Code : Sélectionner tout - Visualiser dans une fenêtre à part printf("NomDeFonction En Cours d'execution\n");
Mais si j'execute directement sous le shell le binaire, la il m'affiche rien de chez rien et retourne direct a la ligne.
Pourquoi DDD me montre mes printf et me signale mon programme correctement terminé avec un resultat bien reel et pourquoi rien ne se passe quand je l' execute ? Un probleme de gestion memoire?
Merci d'avance, Cordialement
Pour les courageux qui veulent un peu de code pas joli ( jsuis debutant )
http://atpred.free.fr/test.tar
-AStar_ListOp correspond au module qui travaille sur le traitement de liste et de noeud.
-AStar_MeilleurCoup l'algorithme principal et quelques sous fonctions utiles
-Global réunit des fonctions/types que d'autres personnes devront utiliser.
-Test est le main avec un plateau vite fait généré
Partager