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

Autres IDE Pascal Discussion :

Procédure et fonction : passage de paramètre par valeur et passage par référence


Sujet :

Autres IDE Pascal

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Procédure et fonction : passage de paramètre par valeur et passage par référence
    Bonjour à tous
    Quelles sont les différences (au niveau de la déclaration et au niveau des cas d'utilisation) entre le passage par référence et le passage par valeur dans la déclaration d'une procédure ou d'une fonction ?
    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 069
    Points : 15 448
    Points
    15 448
    Billets dans le blog
    9
    Par défaut
    Bonjour !

    La chose est expliquée , sous le titre "arguments (ou paramètres)".
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  3. #3
    Membre éprouvé
    Avatar de EpiTouille
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 372
    Points : 917
    Points
    917
    Par défaut
    dans le passage par valeur, le programme fais une copie de la variable, ce qui fais que la fonction ne modifie que la copie et pas la valeur. Le passage par adresse quant à lui envoie l'adresse de la variable (soit 8 octet en 64bit et 4 en 32bit). Pour l'envoie de structure ou d'une variable qui soit être modifié dans la fonction la passage par adresse est conseillé, en revanche pour une variable comme un integer, si tu n'as pas besoins de modifier cette variable, il est conseillé le passage par copie (en 64bit, un pointeur sur integer (8octet) seras moins lourd qu'un int (4octets)

  4. #4
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Gie,
    Citation Envoyé par EpiTouille Voir le message
    dans le passage par valeur, le programme fais une copie de la variable, ce qui fais que la fonction ne modifie que la copie et pas la valeur. Le passage par adresse quant à lui envoie l'adresse de la variable (soit 8 octet en 64bit et 4 en 32bit). Pour l'envoie de structure ou d'une variable qui soit être modifié dans la fonction la passage par adresse est conseillé, en revanche pour une variable comme un integer, si tu n'as pas besoins de modifier cette variable, il est conseillé le passage par copie (en 64bit, un pointeur sur integer (8octet) seras moins lourd qu'un int (4octets)
    Je n'aurais pas osé.
    Si les cons volaient, il ferait nuit à midi.

  5. #5
    Membre éprouvé
    Avatar de EpiTouille
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 372
    Points : 917
    Points
    917
    Par défaut
    c'est pas les bonnes tailles ? J'avais vérifié avec des sizeof

    edit : je vois même 2 octets pour l'int, encore mieux

  6. #6
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Hoa,

    Le problème n'était pas là par rapport à ton message.

    Revoyons-le : "(en 64bit, un pointeur sur integer (8octet) seras moins lourd qu'un int (4octets)"

    D'après cette phrase, 8 octets pèsent moins que 4.
    Si les cons volaient, il ferait nuit à midi.

  7. #7
    Membre éprouvé
    Avatar de EpiTouille
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 372
    Points : 917
    Points
    917
    Par défaut
    arf, j'avais même pas fais gaff

Discussions similaires

  1. Réponses: 6
    Dernier message: 18/05/2012, 12h07
  2. Réponses: 2
    Dernier message: 15/06/2011, 11h13
  3. Réponses: 4
    Dernier message: 15/12/2009, 13h39
  4. passage paramètre par valeur et référence
    Par new_wave dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 09/03/2008, 18h53
  5. Réponses: 12
    Dernier message: 26/01/2008, 20h23

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