Renvoyer plusieurs valeur en c

Sarah1609_2710 -  
Dalfab Messages postés 720 Statut Membre -
Bonjour,

Voila je voudrais renvoyer plusieurs valeur mais je ne sais pas comment faire j'ai vu que l'on pouvait utiliser un type structuré mais je ne vois pas comment faire pouvez vous maider rsvp

2 réponses

yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 585
 
0
Dalfab Messages postés 720 Statut Membre 101
 
Une fonction C peut retourner une seule chose (tous les types sauf un tableau.)
On peut donc retourner une structure (qui d'ailleurs peut tout contenir y compris un tableau)
struct TroisChoses {
    int  premier;
    double  second;
    char  troisieme[10];
};

struct TroisChoses  fonction( ) {
    struct TroisChoses  res;
    res.premier = 42;
    res.second = 3.14159;
    strcpy( res.troisieme , "et voila" );

    return  res;
}

int main() {
    struct TroisChoses  attendu;

    attendu = fonction();
    prinft("recu : %d %f %s\n", attendu.premier, attendu.second, attendu.troisieme );
}
0