IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèque standard C Discussion :

Erreur introuvable


Sujet :

Bibliothèque standard C

  1. #1
    Invité
    Invité(e)
    Par défaut Erreur introuvable
    Bonjour,
    j'ai fait un programme qui convertit des nombres binaires en nombres décimaux mais ca ne marche pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    #include <stdio.h>
    #include <stdlib.h>
     
    int BinToDec(char* leBinaire)
    {
    	int leDecimal = 0,i=0;
    	scanf("%s",leBinaire);
    	do
    	{
    		if (leBinaire[i] == '1')
    			leDecimal = leDecimal * 2 + 1;
    		else if (leBinaire[i] == '0')
    			leDecimal *= 2;
            i++;
    	}
    	while (leBinaire[i] != '\n');
    	return leDecimal/2;
    }
     
    int main()
    {
        int nbDec;
        char* leBinaire;
     
        scanf("%s", leBinaire);
        nbDec = BinToDec(leBinaire);
        printf ("%i",nbDec);
     
        getchar();
        return 0;
    }
    Pouvez_vous me dire pour quoi il ne fonction pas !
    merci

  2. #2
    Membre confirmé Avatar de LeBelge63
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 73
    Par défaut
    Donne nous l'erreur pour que l'on voit ce qui ne va pas.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Il plante à l'execussion!

  4. #4
    Invité
    Invité(e)
    Par défaut
    J'ai trouvé enfaite il faut, dans le main, déclarer un tableau et pas un pointeur!

  5. #5
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    la grosse faute est là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        char* leBinaire;
     
        scanf("%s", leBinaire);
    oui, scanf prend un char*, mais ce char * doit correspondre à un pointeur sur une mémoire allouée !!!

    donc par exemple :


  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par brastir Voir le message
    Pouvez_vous me dire pour quoi il ne fonction pas !
    merci
    Enorme bug :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Project   : Forums
    Compiler  : GNU GCC Compiler (called directly)
    Directory : D:\dev\forums\
    --------------------------------------------------------------------------------
    Switching to target: default
    Compiling: main.c
    main.c:21: warning: function declaration isn't a prototype
    main.c: In function `main':
    main.c:23: warning: 'leBinaire' might be used uninitialized in this function
    Linking console executable: console.exe
    Process terminated with status 0 (0 minutes, 0 seconds)
    0 errors, 2 warnings
    Tu passes n'importe quoi à la fonction, le comportement est indéterminé...
    1 - par défaut, une variable locale n'est pas initialisée
    2 - un pointeur devrait pointer sur une zone de données valide (ici, un tableau de char suffisamment grand...).

  7. #7
    Invité
    Invité(e)
    Par défaut
    Excuse moi mais je ne comprend pas ce que tu veux dire ?

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par brastir Voir le message
    Excuse moi mais je ne comprend pas ce que tu veux dire ?
    voir mon message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
       char leBinaire[100];
     
        scanf("%s", leBinaire);
    marchera

  9. #9
    Invité
    Invité(e)
    Par défaut
    OK merci tous le monde, c'est très sympas de votre part!maitenant ça marche!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur introuvable
    Par Sion_Sempai dans le forum Langage
    Réponses: 4
    Dernier message: 20/03/2006, 16h51
  2. erreur introuvable-.---
    Par cyrill.gremaud dans le forum ASP
    Réponses: 8
    Dernier message: 28/12/2005, 09h27
  3. erreur introuvable-.---
    Par cyrill.gremaud dans le forum ASP
    Réponses: 3
    Dernier message: 22/09/2005, 09h42
  4. [LG]erreur introuvable
    Par kojima dans le forum Langage
    Réponses: 8
    Dernier message: 11/02/2005, 18h15
  5. [syntaxe] erreur introuvable
    Par JohnnyC dans le forum Outils
    Réponses: 2
    Dernier message: 29/04/2004, 11h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo