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 :

Echange entre deux nombres et pointeurs


Sujet :

C

  1. #1
    Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2014
    Messages : 123
    Points : 66
    Points
    66
    Par défaut Echange entre deux nombres et pointeurs
    Bonjour lorsqu'on exécute ce programme les nombres ne s'échangent pas. Est-ce que c'est parce que dans la procédure on copie x et y dans p et q, puis p et q sont échangés mais les valeurs de p et q ne sont pas copiées dans x et y ?

    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
    #include <stdio.h>
    void echange(int p, int q) // les paramètres sont passés par valeur
    {
    int temp;
    printf("avant permutation dans la fonction p=%d q=%d\n",p,q);
    temp=p;
    p=q;
    q=temp;
    printf("après permutation dans la fonction p=%d q=%d\n",p,q);
    }
    int main(void)
    {
    int x=3,y=5;
    printf("avant permutation x=%d y=%d\n",x,y);
    echange(x,y);
    printf("après permutation x=%d y=%d",x,y);
    return 0;
    }

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 372
    Points : 23 628
    Points
    23 628
    Par défaut
    Bonjour,

    Citation Envoyé par Armays Voir le message
    Bonjour lorsqu'on exécute ce programme les nombres ne s'échangent pas. Est-ce que c'est parce que dans la procédure on copie x et y dans p et q, puis p et q sont échangés mais les valeurs de p et q ne sont pas copiées dans x et y ?
    Oui.

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

Discussions similaires

  1. trouver un nombre compris entre deux nombres
    Par piloulit dans le forum Excel
    Réponses: 1
    Dernier message: 30/11/2007, 07h15
  2. Réponses: 14
    Dernier message: 25/11/2007, 18h32
  3. Ecart entre deux nombres consécutifs
    Par helloparis dans le forum Langage
    Réponses: 2
    Dernier message: 17/08/2007, 03h16
  4. Symbole pour dire "compris entre deux nombres" ?
    Par JackBeauregard dans le forum Langage
    Réponses: 8
    Dernier message: 25/08/2006, 11h48
  5. Nombre aléatoire compris entre deux nombres
    Par Jibees dans le forum ASP
    Réponses: 2
    Dernier message: 21/06/2006, 14h52

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