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 :

Problème de pointeurs en paramètres.


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2005
    Messages : 45
    Par défaut Problème de pointeurs en paramètres.
    Voici mon problème :
    J'ai une série de pointeurs qui désignent un int.
    Avant l'appel à la fonction, aucun problème, les valeurs sont bonnes après controle sur la console.
    J'apelle une fonction en leur passant ce pointeur en paramètres.
    Et là, c'est le drame : la même ligne n'affiche pas les mêmes résultats...

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ...
    printf("%d %d\n", l ->first -> coor -> x, l -> first -> coor -> y);
    int d = search(l);
     
     
    int search(list* l)
    {
    	printf("%d %d\n", l -> first -> coor -> x, l -> first -> coor -> y);
    ...
    }
    Citation Envoyé par Console
    1 4
    Bus error

  2. #2
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Peut tu nous donner ce qu'est ta structure list, comment l est déclaré.

    Deuxième chose, étant donné que tu ne fais que des printf, le plantage n'est peut-être pas à cet endroit, utilise des fprintf sur stderr si tu veux debugger.

    Enfin, affiche au début de ta fonction search l'adresse de l.

  3. #3
    Membre actif
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2005
    Messages : 45
    Par défaut
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    typedef struct
    {
    	int length;
    	struct node* first;
    } list;
    sachant que
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    struct node
    {
    	coordinates* coor;
    	struct node* next;
    };

    Il s'agit d'une liste chaînée.

    Le problème viens pas forcément du printf, mais je ne comprends pas ce qui empeche l'affichege du 2ème printf alors qu'il n'y à qu'un appel de fonction entre les 2 printf...

  4. #4
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Et l comment est-il déclaré ?

  5. #5
    Membre actif
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2005
    Messages : 45
    Par défaut
    Après avoir affiché l on obtient ceci sur la console :
    Citation Envoyé par Console
    1 4
    4194992
    Bus error
    Le problème serait donc dans le printf ???

    Déclaration de l :

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    list *l = malloc(sizeof(list));
    add(l, c);

    Sachant que add ajoute un noeud à la liste.

  6. #6
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Tu l'a affiché où ? (met des commentaires en plus parce que des nombres on ne sait pas à quoi ils correspondent )

    Et peux tu nous dire comment tu as déclaré l ?

    PS : tu peux nous mettre un peut plus de code stp...

  7. #7
    Membre actif
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2005
    Messages : 45
    Par défaut
    Voili vouilou :

    Citation Envoyé par Console
    x=1 y=4
    Adresse de l : 4194992
    Bus error

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

Discussions similaires

  1. Problème de pointeur en paramètre
    Par sweet live dans le forum Langage
    Réponses: 1
    Dernier message: 16/10/2012, 09h59
  2. Problème de pointeur
    Par toma_lille dans le forum C++
    Réponses: 1
    Dernier message: 07/12/2004, 21h26
  3. problème de passage de paramêtre sous mozilla
    Par mat10000 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 27/09/2004, 10h48
  4. [MFC] Problème de pointeur !!
    Par acastor dans le forum MFC
    Réponses: 7
    Dernier message: 19/03/2004, 15h50
  5. TBitmap et problèmes de pointeurs...
    Par benj63 dans le forum C++Builder
    Réponses: 8
    Dernier message: 28/07/2003, 13h39

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