Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2810 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Expliquez moi le return

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

Expliquez moi le return

n°865464
Mc Kagan
Posté le 05-10-2004 à 19:51:54  profilanswer
 

Voila trois ans que je programme et il reste pour moi une zone d'ombre immense sur le C++, c'est le return. Je l'utilise de façon complètement aveugle dans mes programmes mais il me faut maintenant savoir comment il fonctionne.
 
-A quoi sert-il?
-Ou est retournée la valeur ? (dans la pile?)
-A quoi ça sert de retourner une valeur?
-Comment est-elle réutilisée?

mood
Publicité
Posté le 05-10-2004 à 19:51:54  profilanswer
 

n°865475
masklinn
í dag viðrar vel til loftárása
Posté le 05-10-2004 à 20:02:18  profilanswer
 

A faire sortir quelque chose de la fonction
je sais pas
sortie d'informations ou codes (erreur, terminaison, ...), en C++ il y a les exceptions mais il peut être meilleur d'utiliser le return
?
 
(au fait, les 3 ans de prog, c'est mytho? non parce que dans la majorité des langages disposant de fonctions le return existe quand même [:cupra] )


Message édité par masklinn le 05-10-2004 à 20:06:24

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°865477
Jubijub
Parce que je le VD bien
Posté le 05-10-2004 à 20:04:41  profilanswer
 

Mc Kagan a écrit :

Voila trois ans que je programme et il reste pour moi une zone d'ombre immense sur le C++, c'est le return. Je l'utilise de façon complètement aveugle dans mes programmes mais il me faut maintenant savoir comment il fonctionne.
 
-A quoi sert-il?
-Ou est retournée la valeur ? (dans la pile?)
-A quoi ça sert de retourner une valeur?
-Comment est-elle réutilisée?


 
imagine une fonction somme qui prent 2 entiers en paramètre, et te renvoie un entier égal à la somme des 2 autres : le return sert à renvoyer ce fameux entier


---------------
Jubi Photos : Flickr - 500px
n°865478
Mc Kagan
Posté le 05-10-2004 à 20:05:49  profilanswer
 

Masklinn a écrit :

A faire sortir quelque chose de la fonction
je sais pas
sortie d'informations ou codes (erreur, terminaison, ...), en C++ il y a les exceptions mais il peut être meilleur d'utiliser le return
?


 
Ouais je sais que par exemple si tu déclares une méthode de type "bool" la valeur de retour (1 ou 0), ça a une influence sur le prgramme mais la quelle

n°865482
Mc Kagan
Posté le 05-10-2004 à 20:07:21  profilanswer
 

Jubijub a écrit :

imagine une fonction somme qui prent 2 entiers en paramètre, et te renvoie un entier égal à la somme des 2 autres : le return sert à renvoyer ce fameux entier


 
Mais ça sert à quoi de retourner !!??

n°865486
Jubijub
Parce que je le VD bien
Posté le 05-10-2004 à 20:11:30  profilanswer
 

!!!!!
 
je te montre l'exemple en java (la syntaxe doit pas etre très différente en C) :  
 

Code :
  1. public class Test {
  2. public static void main(String[] args) {
  3.     Test test = new Test();
  4.     int a = 3;
  5.     int b = 5;
  6.     int c = test.somme(a,b); // j'appelle la fonction somme (une méthode dans mon cas)
  7.     System.out.println(c);
  8. }
  9. public int somme( int a, int b) {
  10.     int resultat = a + b;
  11.     return resultat; // ici je renvois le résultat à l'endroit qui a appellé la fonction somme
  12. }
  13. }


Message édité par Jubijub le 05-10-2004 à 20:12:09

---------------
Jubi Photos : Flickr - 500px
n°865504
the real m​oins moins
Posté le 05-10-2004 à 20:29:37  profilanswer
 

3 jours? :sweat:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°865514
Mc Kagan
Posté le 05-10-2004 à 20:41:12  profilanswer
 

Enfin une explication sèrieuse (Jubijub).
Mais quel est l'interet du retour, et comment ça tu retournes à l'endroit de l'appel de la fonction la valeur.

n°865521
masklinn
í dag viðrar vel til loftárása
Posté le 05-10-2004 à 20:52:05  profilanswer
 

Mc Kagan a écrit :

Enfin une explication sèrieuse (Jubijub).
Mais quel est l'interet du retour, et comment ça tu retournes à l'endroit de l'appel de la fonction la valeur.


Le but d'une fonction, c'est d'effectuer un traitement en fonction des infos qu'on lui donne (les arguments).
 
Ce traitement peut ne pas avoir de résultat (la fonction fait son bordel puis se termine), ou alors la fonction peut avoir un résultat qu'on aura besoin d'utiliser.
 
Le return sert à renvoyer le résultat des traitements effectués par la fonction à ce qui a appelé la dite fonction (ensuite libre à toi de l'utiliser ou pas).
 
Sinon, sérieusement, ca fait combien de temps que tu programmes?


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°865522
kadreg
profil: Utilisateur
Posté le 05-10-2004 à 20:53:15  profilanswer
 

Masklinn a écrit :


Sinon, sérieusement, ca fait combien de temps que tu programmes?


 
3 ans :o


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
mood
Publicité
Posté le 05-10-2004 à 20:53:15  profilanswer
 

n°865524
masklinn
í dag viðrar vel til loftárása
Posté le 05-10-2004 à 20:54:58  profilanswer
 


j'ai dit sérieusement :hello:  
tout le monde sait que ca fait pas 3 ans que tu programmes kadreg, fait pas ton mariole [:spamafote]


Message édité par masklinn le 05-10-2004 à 21:01:51

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°865525
Taz
bisounours-codeur
Posté le 05-10-2004 à 20:55:09  profilanswer
 

moi ce que j'aime c'est le mec qui a pas niveau CP ...
 
 
1 + 2 tu crois que c'est quoi si ce n'est la fonction + appliquée à ses deux opérandes 1 et 2 et dont l'évaluation vaut 3 ?
 
 
Jubijub > bah ton exmple ... il suffit de faire
 
 
int main() { return 0; } qui est un programme où la fonction main retourne 0 au système, 0 étant une valeur indiquant le succès du programme ...

n°865529
nithril
Posté le 05-10-2004 à 20:57:09  profilanswer
 

Bon tant qu'on y est qq1 pourrait m'expliquer a quoi sert une fonction? :ange:  
 


---------------
http://www.janaga.com
n°865531
Taz
bisounours-codeur
Posté le 05-10-2004 à 20:57:25  profilanswer
 

Mc Kagan a écrit :

Ouais je sais que par exemple si tu déclares une méthode de type "bool" la valeur de retour (1 ou 0), ça a une influence sur le prgramme mais la quelle

tu veux pas aller doucement et sécurisez tes bases ?
 
en algèbre, un booléen, c'est Vrai ou Faux
en C++ ça se matérialise par le type bool et true/false ...

n°865532
Taz
bisounours-codeur
Posté le 05-10-2004 à 20:58:02  profilanswer
 

non, 3 minutes dans le monde de l'informatique.

n°865534
Taz
bisounours-codeur
Posté le 05-10-2004 à 20:58:58  profilanswer
 

Nithril a écrit :

Bon tant qu'on y est qq1 pourrait m'expliquer a quoi sert une fonction? :ange:

tu veux pas aller demander sur WindowsSoftareEtRéseau comment on clique plutôt que de dires des conneries ?

n°865537
nithril
Posté le 05-10-2004 à 21:00:12  profilanswer
 

J'ai deja demandé et ils m'ont dit d'aller te voir, parait que tu es un pro du clique


---------------
http://www.janaga.com
n°865541
masklinn
í dag viðrar vel til loftárása
Posté le 05-10-2004 à 21:03:41  profilanswer
 

Taz a écrit :

tu veux pas aller demander sur WindowsSoftareEtRéseau comment on clique plutôt que de dires des conneries ?


Stopos, je sais que t'es lancé mais je pense que nithril plaisante :o


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°865556
Taz
bisounours-codeur
Posté le 05-10-2004 à 21:26:11  profilanswer
 

et moi je suis très sérieux :o

n°865563
masklinn
í dag viðrar vel til loftárása
Posté le 05-10-2004 à 21:31:18  profilanswer
 

Taz a écrit :

et moi je suis très sérieux :o


En l'occurence oui, tu m'auras pas comme ca martoni
 [:masklinn]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°865700
Taz
bisounours-codeur
Posté le 05-10-2004 à 23:40:58  profilanswer
 

pastèque

n°865722
masklinn
í dag viðrar vel til loftárása
Posté le 06-10-2004 à 00:52:42  profilanswer
 


 [:totoz]  
 [:gratgrat]  
 [:figti]  
brocoli [:itm]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°865726
g012
Posté le 06-10-2004 à 01:22:10  profilanswer
 

HAHAHAHAAAAAAAAAAAAAA !!! Excellent !! Merci pour cette franche déconnade :) Super la blague hahahahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa !!!
Ahhhhhhh putain ça fait du bien de rire de temps en temps.
Tiens tu veux pas nous poster un code dans le même délire ? J'ai bien envie de rire :) Bravo en tout cas pour tes talents de comique, j'aurais jamais pensé à celle là ;) Préviens-nous lors de ton premier spectacle. Je réserve une place dès maintenant.

n°865729
Taz
bisounours-codeur
Posté le 06-10-2004 à 01:29:44  profilanswer
 

Masklinn a écrit :

[:totoz]  
 [:gratgrat]  
 [:figti]  
brocoli [:itm]

tu bluffes !
 

g012 a écrit :

HAHAHAHAAAAAAAAAAAAAA !!! Excellent !! Merci pour cette franche déconnade :) Super la blague hahahahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa !!!
Ahhhhhhh putain ça fait du bien de rire de temps en temps.
Tiens tu veux pas nous poster un code dans le même délire ? J'ai bien envie de rire :) Bravo en tout cas pour tes talents de comique, j'aurais jamais pensé à celle là ;) Préviens-nous lors de ton premier spectacle. Je réserve une place dès maintenant.

mutli ? boulet ?  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
boulet, hein ?

n°865732
g012
Posté le 06-10-2004 à 01:30:59  profilanswer
 

Ata j'en ai une autre:
Voilà ça fait 5 ans que j'utilise un pc, mais il reste pour moi une zone d'ombre immense sur le clavier. Je l'utilise de façon complètement aveugle dans mes post mais il me faut maintenant savoir comment il fonctionne.
 
- À quoi sert-il ?
- Où passe le courant ?
- À quoi ça sert d'appuyer sur une touche ?
- Peut-on sans risque de détérioration appuyer 2 fois sur la même touche ?
- Pourquoi y a-t-il plus de boutons que sur ma souris (qui fera l'objet de mes futures interrogations dès que j'aurais élucidé le mystère du clavier flanqué de sa multitudes de carrés réagissant à la pression de mes doigts) ?
- Est-ce vivant ?
- Qui contrôle qui ?

n°865739
Nenelle
Josie Maran addicted
Posté le 06-10-2004 à 02:28:29  profilanswer
 

enorme ce thread.
 
vraiment enorme. ca merite le best of.


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!
n°865745
g012
Posté le 06-10-2004 à 03:34:48  profilanswer
 

C'est clair c'est terrible. Je propose de mettre ce thread en sticky, que tout le monde puisse se marrer ;)
Je propose aussi la création d'une équipe de "Voilà ça fait x ans que j'utilise y, mais", qui s'amuserait à aller poster sur divers forums variés des messages de ce type et nous mettrait le lien ici :)
Y'a pas de raisons, marrons-nous.

n°865762
kadreg
profil: Utilisateur
Posté le 06-10-2004 à 08:27:59  profilanswer
 


Franchement, j'ai plus envie de poster sur progammation sur hfr : ya un groupe d'élite, et si tu mets une ligne de travers, c'est l'exécution sur la place publique, réflexions et compagnie... Toujours comme ça!
 
Au lieu de critiquer, tu ferais mieux de dire ce qui te dérange et de faire des remarques constructives, hein...!! :pfff:


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°865809
nithril
Posté le 06-10-2004 à 09:46:02  profilanswer
 

ok, supposons que Mc Kagan soit de bonne fois :  
 
 
> -Ou est retournée la valeur ? (dans la pile?)  
 
- si ton resultat est un entier ou un pointeur c'est généralement dans le registre e(ax)  
- si c'est un flottant, dans la tête de la pile du FPU  
- pour les registres SIMD je n'en c'est rien du tout
- sinon sans trop me mouiller je dirais dans le heap
 
> -A quoi sert-il?  
> -A quoi ça sert de retourner une valeur?  
 
Comme la dit Jubijub et Masklinn une fonction prend en entrée des parametres et retourne un résultat dépendant desdit parametres, on pourrait faire le parallele avec les fonctions parametriques mathematique. (A noter qu'une fonction retourne tout le temps quelque chose, sinon c'est une procédure)
Donc le return sert à retourner la valeur calculé par la fonction
 
 
par exemple :
cos(angle) retourne le cosinus de 'angle'
le retourn sert ici simplement à dire que l'evaluation de cosinus(angle) vaut mathematiquement parlant "cos(angle)"
 
c'est aussi bien pratique pr l'imbrication et la réutilisabilité immediate du resultat:
 

Code :
  1. string tagada="pouet";
  2. tagada.toUpperCase().find("poue" );


où toUpperCase retourne un string
 
ou:

Code :
  1. cos(sin(tan(angle)))


 
bref on pourrait ecrire une these sur le return  :D  


---------------
http://www.janaga.com
n°865814
chrisbk
-
Posté le 06-10-2004 à 09:54:10  profilanswer
 

Nithril a écrit :


 
> -Ou est retournée la valeur ? (dans la pile?)  
- si ton resultat est un entier ou un pointeur c'est généralement dans le registre e(ax)  


 
*eax pour les entier, st(0) pour les reels.
*edx:eax si la valeur retourné fait 8 octets.
*si la valeur retourné est supérieur a 8 octets, l'appelant fournira a l'appelé un pointeur indiquant ou stocker le resultat (generalement, la pile, mais ca, l'appelé s'en fout)
 
(kookoo [:god])

n°865820
nithril
Posté le 06-10-2004 à 10:11:13  profilanswer
 

\o/ chrisbk \o/
 :love:


---------------
http://www.janaga.com
n°865822
Joel F
Real men use unique_ptr
Posté le 06-10-2004 à 10:11:49  profilanswer
 

pour les SIMD ca passe par registre

n°865825
jagstang
Pa Capona ಠ_ಠ
Posté le 06-10-2004 à 10:17:53  profilanswer
 

c'est quoi ce débarquement de boulet ?  
g012
Nithril
Mc Kagan
 
c'est la rentrée c'est ça ?  
 


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°865826
nithril
Posté le 06-10-2004 à 10:20:28  profilanswer
 

tu t'es oublié dans la liste
kadreg n'a finallement pas tort...


Message édité par nithril le 06-10-2004 à 10:20:44

---------------
http://www.janaga.com
n°865827
jagstang
Pa Capona ಠ_ಠ
Posté le 06-10-2004 à 10:26:36  profilanswer
 

Nithril a écrit :

tu t'es oublié dans la liste
kadreg n'a finallement pas tort...

bye  :hello:


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°865832
nithril
Posté le 06-10-2004 à 10:33:29  profilanswer
 

pas de bol je suis du genre perseverant :D  
 
sinon poste constructif au lieu de balancer des boulets a tout va :kaola:


---------------
http://www.janaga.com
n°865841
chrisbk
-
Posté le 06-10-2004 à 10:54:57  profilanswer
 

JagStang a écrit :

c'est quoi ce débarquement de boulet ?  
g012
Nithril
Mc Kagan
 
c'est la rentrée c'est ça ?


 
Y'a un intru dans ta liste :o


---------------
NP: HTTP Error 764 Stupid coder found
n°865842
Taz
bisounours-codeur
Posté le 06-10-2004 à 10:55:54  profilanswer
 

chrisbk a écrit :

*eax pour les entier, st(0) pour les reels.
*edx:eax si la valeur retourné fait 8 octets.
*si la valeur retourné est supérieur a 8 octets, l'appelant fournira a l'appelé un pointeur indiquant ou stocker le resultat (generalement, la pile, mais ca, l'appelé s'en fout)
 
(kookoo [:god])

cai de la marne Untel

n°865844
chrisbk
-
Posté le 06-10-2004 à 10:57:00  profilanswer
 

Taz a écrit :

cai de la marne Untel


 
bah pas vraiment intel, disons plutot convention du C/C++ et ptet d'autre langage, apres si t'implemente un truc a toi tu fais comme tu veux (.net change 2/3 trucs dans la preservation de registre lors d'appel de fonctions pr ex)


---------------
NP: HTTP Error 764 Stupid coder found
n°865847
jagstang
Pa Capona ಠ_ಠ
Posté le 06-10-2004 à 10:59:39  profilanswer
 

chrisbk a écrit :

Y'a un intru dans ta liste :o


les multis sont considérés également comme tels


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
  FORUM HardWare.fr
  Programmation
  C++

  Expliquez moi le return

 

Sujets relatifs
[PHP] Return d'un objet qui foireHeader "Return-Path:" dans une fonction mail() ?
Executer une fonction avant un "return"[Perl] Win32API et return code
[C++] pb avec un return d une fonction dans une classreturn !0 en fin de fonction. D'ou viens cette notation ?
exit / returnconst int fct(){ return 5;}
ptite question au sujet de return[Word] Recherche code pour le carriage return ou espace
Plus de sujets relatifs à : Expliquez moi le return


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)