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 :

Recuperation de 2 valeurs (ou plus) en C dans une fonction


Sujet :

C

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 252
    Points : 192
    Points
    192
    Par défaut Recuperation de 2 valeurs (ou plus) en C dans une fonction
    Bonjour.
    Je débute en C et j'ai une question sur les fonctions.
    Si je veux récupérer la valeur d'une fonction, comme a par exemple, j'utilise un simple return a;
    Mais si je veux récupérer plusieurs valeurs, comment je dois procéder ???
    Merci d'avance

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Mars 2006
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Mars 2006
    Messages : 400
    Points : 562
    Points
    562
    Par défaut
    Il y a plusieurs solutions.
    1. passer des pointeurs à la fonction
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
       
      void fct(typaa* a, typeb* b)
      {
        *a = valeura;
        *b = valeurb;
      }
    2. retourner une structure
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
       
      typedef struct
      {
        typea a;
        typeb b;
      } mastruct;
       
      mastruct fct()
      {
        mastruct ret;
        ret.a = valeura;
        ret.b = valeurb;
        return mastruct;
      }
    3. passer à la fonction un pointeur vers une structure
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
       
      typedef struct
      {
        typea a;
        typeb b;
      } mastruct;
       
      void fct(mastruct* ret)
      {
        ret->a = valeura;
        ret->b = valeurb;
      }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 252
    Points : 192
    Points
    192
    Par défaut
    Ok merci, comme je n'ai encore pas vue les pointeurs, c'est normal que je séchais...

  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par bipbip2006 Voir le message
    Ok merci, comme je n'ai encore pas vue les pointeurs, c'est normal que je séchais...
    Comme ça, tu ne pourras pas dire "à quoi ça sert les pointeurs ?"...

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/04/2013, 14h10
  2. [WD14] recuperer le plus grand nombre dans une table
    Par devalender dans le forum WinDev
    Réponses: 6
    Dernier message: 03/11/2010, 20h16
  3. [AJAX] recuperer plusieurs valeurs dans une fonction
    Par tortue_22 dans le forum AJAX
    Réponses: 4
    Dernier message: 17/05/2009, 13h48
  4. Réponses: 2
    Dernier message: 10/02/2009, 21h35
  5. Réponses: 3
    Dernier message: 07/06/2007, 19h47

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