Il s'agit d'une file dynamique (FIFO) gérer avec un pointeur sur la tête de
la file et un pointeur sur la queue de la file. (le sujet est ainsi je ne
peut pas utiliser d'autres méthodes plus "faciles").
Si je lance le programme sans appel à la procédure retraitFile, mon
messagebox m'affiche bien la valeur 1 correspondant à la tête, MAIS si
j'appel retraitFile, ma tête devrait être égal à 2 mais j'obtient une "NULL
EXCEPTION" donc je pense que c'est parce que mazda_tete->elemProch est NULL
mais je ne vois pas pourquoi.
je débute en C++ et j'aimerai savoir qu'est-ce qui cloche dans mon
programme. Je pense que la procédure AjoutFile ou RetraitFile est la cause
de mon problème mais je ne trouve pas ou.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc Bourguet
"nico" writes:
Il s'agit d'une file dynamique (FIFO) gérer avec un pointeur sur la tête de la file et un pointeur sur la queue de la file. (le sujet est ainsi je ne peut pas utiliser d'autres méthodes plus "faciles").
Ok, un exercice.
Si je lance le programme sans appel à la procédure retraitFile, mon messagebox m'affiche bien la valeur 1 correspondant à la tête, MAIS si j'appel retraitFile, ma tête devrait être égal à 2 mais j'obtient une "NULL EXCEPTION" donc je pense que c'est parce que mazda_tete->elemProch est NULL mais je ne vois pas pourquoi.
je débute en C++ et j'aimerai savoir qu'est-ce qui cloche dans mon programme. Je pense que la procédure AjoutFile ou RetraitFile est la cause de mon problème mais je ne trouve pas ou.
C'est du C ou du C++? En C++ le tag est aussi un type et l'utilisation de "struct tag" n'est vraiment pas idiomatique. Avec ce que tu as écrit ci-dessus, tu as deux types disponibles et synonyme: bloc et file. En C il est idiomatique de faire
Form1.cpp
Oui, ça a l'air d'être du C++.
#include "stdafx.h"
MS-Windows, j'espère que ça ne sert à rien parce qu'on sort de mon domaine de compétance.
#include "Form1.h" #include <windows.h>
#undef MessageBox;
Ouille, je ne connais pas windows mais ça me semble un mauvais signe.
C'est du C ou du C++? En C++, tu aurais encapsulé ta fifo dans une classe dont initFile serait le constructeur, ajoutFile un fonction membre publique, tete et queue des membres privés. (En fait en C tu aurais aussi mis tete et queue dans une struct.)
MessageBox::Show(Convert::ToString(tete->nombre)); // n imp }
Le problème se situe ici. Fais un dessin avec des petits rectangles pour représenter les file et des flèches pour représenter les pointeurs, tu devrais trouver ton erreur.
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
"nico" <ter@hotmail.com> writes:
Il s'agit d'une file dynamique (FIFO) gérer avec un
pointeur sur la tête de la file et un pointeur sur la
queue de la file. (le sujet est ainsi je ne peut pas
utiliser d'autres méthodes plus "faciles").
Ok, un exercice.
Si je lance le programme sans appel à la procédure
retraitFile, mon messagebox m'affiche bien la valeur 1
correspondant à la tête, MAIS si j'appel retraitFile, ma
tête devrait être égal à 2 mais j'obtient une "NULL
EXCEPTION" donc je pense que c'est parce que
mazda_tete->elemProch est NULL mais je ne vois pas
pourquoi.
je débute en C++ et j'aimerai savoir qu'est-ce qui cloche
dans mon programme. Je pense que la procédure AjoutFile ou
RetraitFile est la cause de mon problème mais je ne trouve
pas ou.
C'est du C ou du C++? En C++ le tag est aussi un type et
l'utilisation de "struct tag" n'est vraiment pas
idiomatique. Avec ce que tu as écrit ci-dessus, tu as deux
types disponibles et synonyme: bloc et file.
En C il est idiomatique de faire
Form1.cpp
Oui, ça a l'air d'être du C++.
#include "stdafx.h"
MS-Windows, j'espère que ça ne sert à rien parce qu'on sort
de mon domaine de compétance.
#include "Form1.h"
#include <windows.h>
#undef MessageBox;
Ouille, je ne connais pas windows mais ça me semble un
mauvais signe.
C'est du C ou du C++? En C++, tu aurais encapsulé ta fifo
dans une classe dont initFile serait le constructeur,
ajoutFile un fonction membre publique, tete et queue des
membres privés. (En fait en C tu aurais aussi mis tete et
queue dans une struct.)
MessageBox::Show(Convert::ToString(tete->nombre)); // n imp
}
Le problème se situe ici. Fais un dessin avec des petits
rectangles pour représenter les file et des flèches pour
représenter les pointeurs, tu devrais trouver ton erreur.
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Il s'agit d'une file dynamique (FIFO) gérer avec un pointeur sur la tête de la file et un pointeur sur la queue de la file. (le sujet est ainsi je ne peut pas utiliser d'autres méthodes plus "faciles").
Ok, un exercice.
Si je lance le programme sans appel à la procédure retraitFile, mon messagebox m'affiche bien la valeur 1 correspondant à la tête, MAIS si j'appel retraitFile, ma tête devrait être égal à 2 mais j'obtient une "NULL EXCEPTION" donc je pense que c'est parce que mazda_tete->elemProch est NULL mais je ne vois pas pourquoi.
je débute en C++ et j'aimerai savoir qu'est-ce qui cloche dans mon programme. Je pense que la procédure AjoutFile ou RetraitFile est la cause de mon problème mais je ne trouve pas ou.
C'est du C ou du C++? En C++ le tag est aussi un type et l'utilisation de "struct tag" n'est vraiment pas idiomatique. Avec ce que tu as écrit ci-dessus, tu as deux types disponibles et synonyme: bloc et file. En C il est idiomatique de faire
Form1.cpp
Oui, ça a l'air d'être du C++.
#include "stdafx.h"
MS-Windows, j'espère que ça ne sert à rien parce qu'on sort de mon domaine de compétance.
#include "Form1.h" #include <windows.h>
#undef MessageBox;
Ouille, je ne connais pas windows mais ça me semble un mauvais signe.
C'est du C ou du C++? En C++, tu aurais encapsulé ta fifo dans une classe dont initFile serait le constructeur, ajoutFile un fonction membre publique, tete et queue des membres privés. (En fait en C tu aurais aussi mis tete et queue dans une struct.)
MessageBox::Show(Convert::ToString(tete->nombre)); // n imp }
Le problème se situe ici. Fais un dessin avec des petits rectangles pour représenter les file et des flèches pour représenter les pointeurs, tu devrais trouver ton erreur.
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org