Programme cesse de fonctionner

kort1508 Messages postés 6 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 juin 2009 - 10 juin 2009 à 10:16
kort1508 Messages postés 6 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 juin 2009 - 10 juin 2009 à 11:05
Bonjour, alors voila j'ai un problème lorsque je lance mon programme, il débute normalement mais seulement voila, il apparait a l'écran que mon programme.exe a cesser de fonctionner et je ne vois pas d'ou sa vient dans mon code.cpp, merci d'avance pour votre aide.

#include <c_port.h>
#include <c_api.h>
#include <c_path.h>
#include
#include <fstream>
//Gestionnaire de ressources
#include /* Pour pouvoir utiliser init_resource_manager() */

#include <c_out.h> /* pour le mode verbose */

using namespace std;
ofstream file2 ("file2.txt");

void function parse_operation(T_machine* mch) {

T_op* operation=mch->get_operations();
while (operation != NULL) {
T_op *def_op = operation->get_definition();
T_ident *ref_op = def_op->get_ref_operation();

file2 << " " << operation->get_op_name()->get_value() << '-' << '>' << " " << ref_op->get_name()->get_value() << ';' << endl;

// Definition de l'operation

while (ref_op) {
file2 << " Ref_op = " << ref_op->get_name()->get_value() << endl;
ref_op = (T_ident *) ref_op->get_next();
}
operation = (T_op*)operation->get_next();
}

}

int function main(int argc, char* argv[]) {
const string filename=argv[1];

//Initialisation du systeme des ressources
init_resource_manager() ;

// Initialisation du compilateur
init_compiler() ;
set_verbose_mode() ;

file2 << "Reading file: " << argv[1] << endl;
T_betree *betree= compiler_syntax_analysis(filename.c_str());

// Chargement de tous les composants de la colonne de raffinement
betree=compiler_semantic_analysis(betree);

T_machine *mch = betree->get_root();
T_machine *mcha = mch;
mch = mch->get_ref_specification(); // Specification de la colonne de raffinement

parse_operation(mcha);

do {
file2 << "Current component : " << mcha->get_machine_name()->get_name()->get_value() << endl;
mcha = mcha->get_ref_abstraction();
parse_operation(mcha);
}
while (mch != mcha);

}

En gros cela m'affiche cela dans mon fichier texte :

 evt5-> evt3;
 evt6-> evt3;
 evt3-> evt1;
alors qu'il devrait y avoir en plus

 evt3->evt2;
 evt4;
 evt1->evt1;

2 réponses

cs_neone Messages postés 96 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 7 mars 2011
10 juin 2009 à 10:50
Bonjour,
tu compile sous quoi???
salut
0
kort1508 Messages postés 6 Date d'inscription lundi 8 juin 2009 Statut Membre Dernière intervention 25 juin 2009
10 juin 2009 à 11:05
Salut, je compile avec le Bcompiler
0
Rejoignez-nous