Partage
  • Partager sur Facebook
  • Partager sur Twitter

[C][Warning]problème à la compilation

:/ mes amis m'ont lacher

    19 février 2006 à 22:35:13

    Après deux jours en compagnie de mes amis Google, la fonction recherche et le traducteur :p en ligne; je n'ai toujours pas trouvé se solution a mon problème:

    j'ai commencé un RPG futuriste. j'utilise pour mémoriser les informations du joueur une structure et une variable du même type définie comme glabale (déjà ça c'est pas bien mais je voyai pas comment faire :euh: )


    voisi le fichier main.c


    #include <stdio.h>
    #include <stdlib.h>
    #include "structure.h"

    int main()
    {
        //une mini intro pour le plaisir
        printf("Bonjour, tu t'apprete a penetrer dans le monde futuriste de FuturIsInFight FIIF !!\n\n\n");

        //on demande le nom au joueur
        printf("Mais euh... excuse-moi; je ne me souvient plus de ton nom.\n");
        fgets(hero.nom, TAILLE_PSEUDO, stdin);
        printf("Ah oui c'est bine ça; tu t'appele %s !!", hero.nom);

        //on demande au joueur sa vocation
        printf("Je pourais également savoir ce que tu est dans la vie?\n");
        choose_job();
        set_basic_stat(hero);//on entre les stats de bases selon la vocation

        //le joueur choisi ses armes (notez le RP toujours présent =] )
        printf("mais que vois-je sur le coté de ta tunique??\n");
        printf("quel type d'arme est-ce donc ??\n");
        choose_arme();
        printf("je me disai aussi; ça y ressemblai !\n");


        //encore un choix pour le joueur: l'armure!!
        printf("par contre je ne vois pas du tout en quoi est l'armure que tu porte ??");
        choose_armor();
        printf("une armure en %s ... je ne l'aurai pas deviner tout seul !!", hero.armor);

        set_effective_stat(hero);
        //on modifie les valeurs des stats pour qu'elle s'aligne avec le choix d'arme et d'armure


            return 0;
    }


    le fichier structure.h

    //on défini la taille des chaine pour le nom, job, arme, armor...
    #define TAILLE_PSEUDO 20
    #define TAILLE_JOB 20
    #define TAILLE_ARME 20
    #define TAILLE_ARMOR 30

    //stat sert à renfermer toutes les inforamtions concernant le joueur
    struct stat
    {
        int CC;
        int CT;
        int ATK;
        int DEF;
        int PV;
        int SPD;
        char nom[TAILLE_PSEUDO];
        char job[TAILLE_JOB];
        char arme[TAILLE_ARME];
        char armor[TAILLE_ARMOR];
    };

    struct stat hero, rival, ennemi;


    et le fichier choose.c (la partie utile)

    #include <stdio.h>
    #include <stdlib.h>
    #include "choose.h"
    #include "structure.h"


    //la demande au joueur de sa vocation
    void choose_job()
    {
        int choix = 0,defini = 0;

        do
        {
            printf("(entre le numero correspondant a ton choix)\n");
            printf("1. Templier Celeste\n");
            printf("2. Soldat des Runes\n");
            printf("3. Guerrier de Chaos\n");
            scanf("%d", choix);//on demande

            //on traite la demande avec une gestion des erreur de frappe
            switch(choix)
            {
                case 1:
                    hero.job = "Templier Celeste";//le problème est au niveau du hero.job
                    defini = 1;
                    break;
                case 2:
                    hero.job[] = "Soldat des Runes";//j'ai esayer avec trois façon
                    defini = 1;
                    break;
                case 3:
                    hero.job[TAILLE_JOB] = "Guerrier du Chaos";//mais aucune n'est juste :/
                    defini = 1;
                    break;
                default:
                    defini = 0;
            }
        } while(defini!=1);//composante du système d gestion des faute de frappe
    }


    l'erreur survient lors de la compilation dans le fichier choose.c (le dernier).
    je ne vois pas comment entrer les informations dans ma variable :/
    j'ai essayer les trois façon; chacune comporte une erreur et je ne comprend pas comment faire.

    l'erreur afficher dans le troisième cas est :

    Citation : DEV CPP

    Warning: assignment makes integer from pointer without a cast


    j'obtient le même résultat avec Code::Block.

    si quelqu'un voit l'erreur ou connait un site ou sont repertorier les erreur et les warnings du compilateur ça pourait m'aider.

    Merci d'avance pour vos réponses :(

    EDIT: si vous avez des critiques au passage sur le petit morceau que l'ont peut voir ici ne vous genez pas ^^
    • Partager sur Facebook
    • Partager sur Twitter
      19 février 2006 à 23:41:58


          do
          {
              printf("(entre le numero correspondant a ton choix)\n");
              printf("1. Templier Celeste\n");
              printf("2. Soldat des Runes\n");
              printf("3. Guerrier de Chaos\n");
              scanf("%d", &choix);//on demande

              //on traite la demande avec une gestion des erreur de frappe
              switch(choix)
              {
                  case 1:
                      hero.job[TAILLE_JOB] = "Templier Celeste";
                      defini = 1;
                      break;
                  case 2:
                      hero.job[TAILLE_JOB] = "Soldat des Runes";
                      defini = 1;
                      break;
                  case 3:
                      hero.job[TAILLE_JOB] = "Guerrier du Chaos";
                      defini = 1;
                      break;
                  default:
                      defini = 0;
              }
          } while(defini!=1);//


      J'ai pas changé grand-chose mais c'est bon. La compilation n'a rien trouvée. Bonne chance pour la suite.

      PS : tu parle d'un site qui répertorie les erreurs et ils se trouvent que j'ai fait un sujets ou sont référencer les erreurs ( il n'y a que 7 erreurs pour l'instant mais sa monte lentement ^^ )

      EDIT : quelques petit erreurs j'ai effacé "; sans faire gaffe. là, c'est bon
      • Partager sur Facebook
      • Partager sur Twitter
        19 février 2006 à 23:52:05

        Merci pour ce renseignement mais je vois pas trop la différence avec le mien qui après 2 jours se met à marcher o_O .
        encore merci.

        Tu pourai m'envoyer l'adresse de ton site (et au pire une adresse msn) pcq je suis tellement Zer0 que je pourai le faire avancer assez vite avec le nombre d'erreur que je fait (rassurez vous; je les résous la plupart moi-même :p ) ;) .

        EDIT: en fait nn; l'erreur reste la même :

        Citation : dev c++


        34 C:\blablabla\blabla\bla\FIIF\choose.c [Warning] assignment makes integer from pointer without a cast



        EDIT2: ça ne gène plus le jeu en soit mais ça ne fait pas très propre alors si quelqu'un en avait la traduction exact ??
        • Partager sur Facebook
        • Partager sur Twitter
          19 février 2006 à 23:53:48

          euh... c'est pas un site c'est juste un sujet sur le forum.
          fais gaffe j'ai enlevé le "; après Templier Celeste et Guerrier du Chaos
          sans doute quand j'ai enlevé les commentaires
          • Partager sur Facebook
          • Partager sur Twitter

          [C][Warning]problème à la compilation

          × 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