Renvoyer plusieurs valeur en c

Fermé
Sarah1609_2710 - 14 mai 2020 à 15:10
Dalfab Messages postés 703 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 1 mars 2023 - 14 mai 2020 à 17:31
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 21303 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023 1 326
14 mai 2020 à 15:34
0
Dalfab Messages postés 703 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 1 mars 2023 100
Modifié le 14 mai 2020 à 17:33
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