Peut-on renvoyer deux choses dans une fonctio

Fermé
tazgaga Messages postés 9 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 10 janvier 2010 - 10 janv. 2010 à 12:41
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 - 10 janv. 2010 à 15:18
Bonjour,

Voilà je voudrais savoir si en c, une fonction peut renvoyer deux choses sans passer par des structures car ce que je veux revoyer est déjà une structure.
En effet le but de ma fonction est de calculer le quotient et le reste de la division euclidienne de deux polynômes( représenter par des structures ). J'ai déjà l'algorithme de calcul mais je voudrais que ma fonction renvoie Q et R qui sont des structures car je dois me servir de ceux ci dans mon programme principal
merci d'avance de votre réponse

8 réponses

chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 378
10 janv. 2010 à 12:48
Salut,
si Q et R sont de meme type (int à priori), ben un truc un peu voyou mais qui dois marcher....c'est de renvoyer un pointeur sur un entier
dans ta fonction
int*p=malloc(sizeof(int)*2) //tu mets Q et R dans ce pointeur et tu retourne p à la fin de ta fonction....
ainsi en parcourant p, ben tu aura tes 2 valeurs!!
Peut-etre y'a mieux!!
@+
0
tazgaga Messages postés 9 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 10 janvier 2010 9
10 janv. 2010 à 14:37
en fait ma question est plus précisément est ce que l'on peut faire
type type nomdelafonction (type arg1, type arg2,...)
{
type variable1 ;
type variable2 ;
instructions;
return(variable1, variable 2);
}
0
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 378
10 janv. 2010 à 14:38
pas à ma connaissance en C!!
0
tazgaga Messages postés 9 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 10 janvier 2010 9
10 janv. 2010 à 14:44
oki je te remercie mais la je suis vraiment desepérée car il me faut retourner ces deux structures
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 378
10 janv. 2010 à 14:50
type variable1 ;
type variable2 ;
void nomdelafonction (type arg1, type arg2,type *variable1,type*variable2)
{
modification_des_valeur_de variable1
Modification de variable2
}
les valeur seront modifiées et pas de retours...non??
0
tazgaga Messages postés 9 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 10 janvier 2010 9
10 janv. 2010 à 15:09
merci de ton aide je crois ke mon programme va finir par retourner qu'une variable et l'autre aux oubliettes cela ne sera pas aussi jolie mais tant pis. Je n'abandonne pas l'idée mais je pense que ta proposition est sans doute la meilleure
0
tazgaga Messages postés 9 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 10 janvier 2010 9
10 janv. 2010 à 15:15
Alors une petite idée me vient avec peut être des structure de structures
typedef struct {T_Poly Q,T_Poly R} quotient_reste
où les différents éléments de ma structures seront elles meme des structures
pensaient vous que cela ait un sens ?
0
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 378
10 janv. 2010 à 15:18
Ben oui!! Tu peux le faire!!Mais vu que dans ton premier poste tu voulais pas de structure...je me suis pas aventuré là dedans!!
Mais tu peux absoluement le faire!!
En tous les cas, rien l'en empeche!!;)))
0