Partage
  • Partager sur Facebook
  • Partager sur Twitter

Process terminated with status 3

Sujet résolu
    26 novembre 2008 à 2:57:11

    Bonjour,
    Voilà je suis en train de codé un jeu et mon programme plante! J'ai beau retourné le problème dans tous les sens et je n'y arrive pas. Le programme retourne toujours 3. Voici mon code:


    /*** main.cpp ***\
     *Project:         Gift Rush
     *Auteur:          ST-THÉTIQUE
     *Date de Création:12 novembre 2008
     *Fonction: Base du programe;Initiatlise et appelle de tous les autres fonctions du programme.
     */
    #include <iostream>
    
    #include <SDL/SDL.h>
    #include <SDL/SDL_image.h>
    
    #include <FMOD/fmod.h>
    #include <SDL/SDL_ttf.h>
    
    #include "menu.h"
    #include "niveaux.h"
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        /***Initialisation***/
        SDL_Surface *ecran = NULL;
    
        SDL_Init(SDL_INIT_VIDEO | SDL_INIT_TIMER);
        SDL_WM_SetIcon(IMG_Load("flocon.png"), NULL);
        ecran = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE | SDL_FULLSCREEN | SDL_DOUBLEBUF);
        SDL_WM_SetCaption("Gift Rush", NULL);
    
        FSOUND_Init(44100, 32, 0);
        TTF_Init();
        /**Début du programme**/
        int niveauChoisi = -1;
    
        while(true)
        {
        if(niveauChoisi == -1)
        niveauChoisi = menuDepart(ecran);
    
        if(niveauChoisi == 0)
        goto FINPROGRAMME;
    
            niveauChoisi = niveau(niveauChoisi);
            cout << "Main" << endl;
        }
    
        FINPROGRAMME:
        /**Fin du programme**/
        SDL_Quit();
        TTF_Quit();
        FSOUND_Close();
    
        return EXIT_SUCCESS;
    }
    


    /*** initialisation.cpp ***\
     *Project:         Gift Rush
     *Auteur:          ST-THÉTIQUE
     *Date de Création:21 novembre 2008
     *Fonction: Initialise les surfaces.
     */
    #include <iostream>
    #include <fstream>
    
    #include <cstdlib>
    
    #include <SDL/SDL.h>
    #include <SDL/SDL_image.h>
    
    #include <FMOD/fmod.h>
    #include <SDL/SDL_ttf.h>
    
    #include "niveaux.h"
    
        using namespace std;
    
        /***FONCTION: Gérer l'object niveau***/
        int niveau(int niveauActu)
        {
            int continuer;
    
            Niveaux niveauCharger(niveauActu);
            cout << "réussi!" << endl;
            continuer = niveauCharger.niveau();
            cout << "réussi le 2e!" << endl << continuer << endl;
    
         return continuer;
        }
    


    /*** niveaux.cpp ***\
     *Project:         Gift Rush
     *Auteur:          ST-THÉTIQUE
     *Date de Création:21 novembre 2008
     *Fonction: Fait jouer le niveau.
     */
    #include <iostream>
    #include <fstream>
    
    #include <cstdlib>
    
    #include <SDL/SDL.h>
    #include <SDL/SDL_image.h>
    
    #include <FMOD/fmod.h>
    #include <SDL/SDL_ttf.h>
    
    #include "niveaux.h"
    
    using namespace std;
    
        /***FONCTION: Partir le niveau***/
    
        int Niveaux::niveau()
        {
        SDL_Surface *boutonMusique;
        SDL_Surface *boutonPause;
        SDL_Surface *boutonQuitter;
    
        const SDL_Color noir = {0, 0, 0};
    
        TTF_Font *kingthings_christmas = NULL;
        kingthings_christmas = TTF_OpenFont("kingthings_christmas.ttf", 48);
    
        boutonMusique = TTF_RenderText_Solid(kingthings_christmas, "Musique ON/OFF", noir);
        boutonPause = TTF_RenderText_Solid(kingthings_christmas, "Pause", noir);
        boutonQuitter = TTF_RenderText_Solid(kingthings_christmas, "Quitter", noir);
    
        SDL_FreeSurface(boutonMusique);
        SDL_FreeSurface(boutonPause);
        SDL_FreeSurface(boutonQuitter);
    
        return 0;
        }
    


    #ifndef DEF_CURSEUR
    #define DEF_CURSEUR
    
    #include <iostream>
    #include <SDL/SDL.h>
    
    int niveau(int niveauActu);
    
    class Niveaux
    {
        public:
    
        Niveaux(int niveauA);
        int niveau();
        ~Niveaux();
    
    
        private:
    
        void chargerNiveau();
        void initialisation();
        void musique();
        void comptePoint();
        bool quitter();
        void pause();
    
        bool statutMusique;
    
        int niveauActu;
        char niveauCases[5][50];
        SDL_Surface *surfaceNiveau;
    
        FSOUND_STREAM *musiqueNiveau;
    
    };
    
    #endif
    


    Bon c'est mes 3 fichiers d'ou vient le prob. Compte tenu que j'ai 12 fichiers dans mon projet... :euh:

    Merci d'avance!!! :)
    • Partager sur Facebook
    • Partager sur Twitter
      26 novembre 2008 à 16:15:56

      Tu peux essayer d'utiliser le debugger de Code::Blocks, Nanoc a fait un tuto dessus ;) .
      • Partager sur Facebook
      • Partager sur Twitter
        26 novembre 2008 à 17:14:04

        Citation : gymnopaul

        Tu peux essayer d'utiliser le debugger de Code::Blocks, Nanoc a fait un tuto dessus ;) .



        Cela te permettra de repérer le fichier et la fonction où a eu lieu l'erreur.
        • Partager sur Facebook
        • Partager sur Twitter
        Co-auteur du cours de C++. ||| Posez vos questions sur le forum ||| Me contacter.
          28 novembre 2008 à 1:40:05

          Merci! :) Je savais que le débuggeur existait mais je ne savais pas m'en servir. Le programme est débuguer maintent. C'était une erreur de destructeur. :euh:
          • Partager sur Facebook
          • Partager sur Twitter

          Process terminated with status 3

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown