Partage
  • Partager sur Facebook
  • Partager sur Twitter

comment voir toutes les instructions d'une librairie ?

Sujet résolu
    5 juin 2006 à 18:24:40

    Bonjour.

    J'ai essayé de créer mon premier programme en C tout seul.
    C'est le jeu "du plus ou du moins".
    On doit essayer de deviner un nombre que l'ordi à choisi en ayant comme indication si c'est plus ou moins grand que le nombre qu'on a entrer.

    Le problème, c'est que je ne trouve pas l'instruction qui choisi un nombre au hasard (probablement round dans la biblio math, mais j'y arrive pas)

    Pouvez-vous m'aider ??

    Voici le code (ne vous moquez pas trop, c'est juste un programme pour me familiariser avec le C que j'ai commencé à apprendre aujourd'hui ...)

    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>

    int main(int argc, char *argv[])
    {
        long nombre = 455, essai = 0, tour = 0;
        const long NOMBRE_MAX = 1000;
        while(essai != nombre)
        {
                    tour++;
                    printf("Tapez un nombre entre 0 et %ld : ",NOMBRE_MAX);
                    scanf("%ld", &essai);
                    if(essai > nombre)
                    {
                             printf("Le nombre doit etre plus petit\n\n");
                    }
                    else if(essai < nombre)
                    {
                             printf("Le nombre doit etre plus grand\n\n");
                    }
        }

      printf("Et c'est gagnier !\nLe nombre etait bien %ld.\nTu as trouvé en %ld tours !\n\n", nombre, tour);
     
      system("PAUSE");     
      return 0;
    }


    Merci ! :)
    • Partager sur Facebook
    • Partager sur Twitter
      5 juin 2006 à 18:29:10

      Quand tu parle d'instruction, tu veux surement dire fonction? Tu n'arrives pas à trouver celle qui permet de "choisir" un nombre au hasard? Elle est pourtant indiquée par M@teo dans son cours...
      • Partager sur Facebook
      • Partager sur Twitter
        5 juin 2006 à 18:29:55

        Je pense que plutot que

        const long NOMBRE_MAX = 1000;
        //tu devrais mettre
        #define NOMBRE_MAX     1000

        au début du fichier

        Sinon, pour le nombre alétoire, c'est rand(), qu'il faut initialiser avec srand(time(NULL));

        Et Comment voir toutes les fonctions : bah, tu l'ouvre !
        • Partager sur Facebook
        • Partager sur Twitter
          5 juin 2006 à 20:50:22

          Merci.
          En effet, je n'avais pas vu que le chapitre après les boucles. (je m'étais arrêté aux boucles while :honte: )

          Citation : ridjidji

          Et Comment voir toutes les fonctions : bah, tu l'ouvre !


          c'est vrai, je n'avais pas pensé que c'était des fichiers sources...

          Je ferais plus attention la prochaine fois avant de poser des questions idiotes ... :(
          • Partager sur Facebook
          • Partager sur Twitter
            5 juin 2006 à 21:28:40

            Citation : Black Templar

            Citation : ridjidji

            Et Comment voir toutes les fonctions : bah, tu l'ouvre !


            c'est vrai, je n'avais pas pensé que c'était des fichiers sources...


            Les .h ne sont ni des librairies ni des bibliothèques, mais des fichiers d'entête.
            Ce ne sont pas non plus des fichiers source en ce sens qu'ils ne contiennent pas la définition des fonctions. Uniquement les prototypes et quelques constantes et types nécessaires à leur définition. Ce sont des fichiers d'interface.

            http://mapage.noos.fr/emdel/notes.htm#bibliotheque
            • Partager sur Facebook
            • Partager sur Twitter
            Music only !
              6 juin 2006 à 8:52:02

              Merci -ed- . :)
              Il va faloir que je précise mon vocabulaire .
              les .h sont des "fichiers d'interfaces" qui contiennent les "prototypes" et constantes de "fonctions" (et non d'instructions)
              • Partager sur Facebook
              • Partager sur Twitter
                6 juin 2006 à 9:09:25

                Et on ne dit pas "librairie" (c'est de l'anglais mal traduit) mais "bibliothèque" (-ed- l'a fait remarquer, mais il est bon d'insister quand même).
                • Partager sur Facebook
                • Partager sur Twitter
                  9 juin 2006 à 21:19:46

                  Ceci étant, il est vrai que j'aimerai parfois moi aussi pouvoir ouvrir les fichiers qui contiennent les fonctions (pas les prototypes, mais les vrai fonctions avec toutes les instructions qui y figurent) ainsi que les structures.
                  Si qqn savait ou il fallait chercher (sur le net ou bien dans un répertoire de Linux), ce serait gentil de sa part :-°
                  • Partager sur Facebook
                  • Partager sur Twitter
                    9 juin 2006 à 22:26:21

                    Pas besoin : les fichiers .c de la bibliothèque standard sont les .a (ou .lib), fournis avec ton compilateur.

                    Les .a sont des rassemblements de .o (fichiers binaires) linkés entre eux, soit des ensembles de fichiers sources compilés mais non linkés dans un exécutable.

                    Ainsi, peut-être qu'un décompilateur (reverse-compiler) peut-être utile ici. A voir.

                    Cependant si quelqu'un a mieux, je suis pmoi aussi preneur.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    comment voir toutes les instructions d'une librairie ?

                    × 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