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

 C Discussion :

Erreur de segmentation


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Erreur de segmentation
    Bonjours à tous.
    Je me casse les dents sur cette portion de code qui cause une erreur de segmentation. Je ne vois pas vraiment d'ou ça peut venir ... Il me semble que l'erreur arrive au niveau de la boucle FOR.


    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
    int main()
    {
        //déclaration des variables principales
        char command [50000];
        int exitvar = 0;
        char* arguments [100] ;
     
     
        printf("Welcome in the prompt!\n");
       do
        {
            printf("prompt# ");
            scanf("%s",command);
            for (int cpt=0; (arguments[cpt] = strtok (command, " ")) != NULL; cpt++)
                {
     
                }

    Merci d'avance

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 104
    Par défaut
    1) En utilisant %s dans scanf, la saisie s'arrêtera au premier espace rencontré : http://xrenault.developpez.com/tutoriels/c/scanf/

    2) Tu utilises mal strtok. Au premier appel de la fonction, le premier argument doit être l'adresse de la chaine, et NULL lors des suivants. http://man.developpez.com/man3/strtok.3.php

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci de ta réponse !

    Par contre j'ai un autre problème : mon scanf est dans un do loop, et mon programme ne s'arete pas dessus, il continue avec l'ancienne commande et ça fait une boucle infinie

  4. #4
    Invité
    Invité(e)
    Par défaut
    J'ai résolue mon problème et mettant la partie d'analyse de la ligne de commande dans une autre fonction, comma ça je force la destructions des variable et donc la reprise à 0.

Discussions similaires

  1. Erreurs de segmentation !
    Par anti-conformiste dans le forum Applications et environnements graphiques
    Réponses: 16
    Dernier message: 18/10/2005, 11h11
  2. Erreur de segmentation
    Par Trunks dans le forum C
    Réponses: 3
    Dernier message: 06/10/2005, 18h28
  3. Erreur de segmentation (Inconnue)
    Par Dark-Meteor dans le forum C
    Réponses: 5
    Dernier message: 08/09/2005, 13h42
  4. [Dev-C++] Erreur de segmentation...
    Par sas dans le forum Dev-C++
    Réponses: 11
    Dernier message: 26/03/2005, 14h25
  5. erreur de segmentation
    Par transistor49 dans le forum C++
    Réponses: 10
    Dernier message: 15/03/2005, 11h18

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