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 :

Passage d'une structure dans une fonction


Sujet :

C

Vue hybride

god_enel Passage d'une structure dans... 22/01/2007, 09h31
coca25 Bonjour, oui, tu la declares... 22/01/2007, 09h33
god_enel Donc il n'y a pas d'histoires... 22/01/2007, 09h35
coca25 j'avais lu qu'avec le C K&R,... 22/01/2007, 09h45
fearyourself Un programme qui passe une... 22/01/2007, 09h52
Emmanuel Delahaye Contrairement aux tableaux,... 22/01/2007, 13h47
god_enel Merci pour votre aide je vais... 22/01/2007, 15h35
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 78
    Par défaut Passage d'une structure dans une fonction
    Bonjour tout le monde,

    Voilà je souhaite enoyer une structure de données en paramètres dans une fonction.

    Je voudrais savoir si la manipulation à executer est la même que pour une variable banale(exemple : entier, chaîne de caractères).

    Merci

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Par défaut
    Bonjour,
    oui, tu la declares de meme facon que tu la declarerais au sein d'une fonction.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 78
    Par défaut
    Donc il n'y a pas d'histoires de pointeur comme je l'ai entendu?

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Par défaut
    j'avais lu qu'avec le C K&R, c'etait obligé de la passer en pointeur, mais j'en sais pas plus.

    en ANSI C (je crois que c'est la majorite des compilateurs) tu peux la passer sans pointeur à part si tu veux en modifier la valeur et que ca soit repercute dans la fonction appelante.

  5. #5
    Expert confirmé

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Par défaut
    Citation Envoyé par coca25
    j'avais lu qu'avec le C K&R, c'etait obligé de la passer en pointeur, mais j'en sais pas plus.

    en ANSI C (je crois que c'est la majorite des compilateurs) tu peux la passer sans pointeur à part si tu veux en modifier la valeur et que ca soit repercute dans la fonction appelante.
    Un programme qui passe une structure sans le faire par pointeur n'a rien compris au fonctionnement du C. C'est possible en effet mais déconseillé d'un point de vue performances et en plus cela est dangereux pour un débutant.

    La structure sera recopiée lors du passage de paramètre mais d'une facon superficielle. Cela provoque souvent des erreurs de codage parce que le programmeur suppose qu'il a affaire avec une copie compléte.

    On passe par pointeur pour éviter cette copie et en même temps cette confusion.

    Enfin, si on ne veut pas pouvoir modifier la structure par crainte d'effets de bord, on utilise le mot clé const.

    Jc

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 78
    Par défaut
    Ah ok merci
    Je vais essayer ça, je vous tient au courant.

  7. #7
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    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 god_enel
    Voilà je souhaite enoyer une structure de données en paramètres dans une fonction.
    Contrairement aux tableaux, on peut techniquement passer la valeur de la structure, mais c'est une perte de temps et d'espace mémoire. Il est préférable de passer l'adresse selon le schéma générique bien connu suivant:
    avec
    Qui permet un accès à la structure en lecture et en écriture.
    Nota : dans la fonction, on utilise la notation -> pour atteindre les éléments :
    Si on désire un accès en lecture seule, on ajoute le qualificateur const :

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 78
    Par défaut
    Merci pour votre aide je vais essayer ainsi.
    Comme je ne suis pas chez moi je vous tiens au courant ce soir ou au plus tard demain.
    Merci encore.

Discussions similaires

  1. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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