Ga naar inhoud

[c++] return 0; wat heeft dat voor nut?


Aanbevolen berichten

hi ik ben nu c++ aan ut leren, maar ik kan er maar niet 8erkomen wat het nut van [code:1:e42c3fc988] return 0;[/code:1:e42c3fc988] is :-? ik heb al in een aantal nederlandse en engelse tutorials/boeken gezocht maar km er maar niet uit :cry: 'wel iets over programma afsluiten oid gelezen... ik weet dat je, als je een functie wilt maken, je dit ook kan/moet gebruiken, maar waarvoor :( iemand beetje uitleg over .?[b:e42c3fc988]return [/b:e42c3fc988]?? Alvast bedankt, Lodewijk
Link naar reactie
Eigenlijk is het heel simpel: return retourneert een waarde uit een functie naar de aanroepende code. Dit hoeft zeer zeker niet per sé "return 0" of zo te zijn, maar kan eigenlijk alles bevatten. Simpel voorbeeldje (pseudo-code, geen c++ of zo): [code:1:ab0a709b22] int add(int a, int b) { return a + b; } [/code:1:ab0a709b22] Deze methode aanroepen met twee getallen levert de som van deze twee getallen op: [code:1:ab0a709b22] int x = add(10, 2); //x is dus nu 12 [/code:1:ab0a709b22]
Link naar reactie
Bij een console c++ programma is het zo dat de 0 van return 0 de "foutcode" retourneert naar het besturingssysteem: int main() { return 0; } Een programma wordt gestart vanuit de shell en de shell voert het programma uit. En als het programma af is gelopen dan kan de shell een foutcode ontvangen. 0 betekent dat alles goed is gegaan. Ik doe het altijd zo: void main() { } Dan retourneert het programma zip.
Link naar reactie
[quote:3e536367be="lody29"]hi ik ben nu c++ aan ut leren, maar ik kan er maar niet 8erkomen wat het nut van [code:1:3e536367be] return 0;[/code:1:3e536367be] is :-? ik heb al in een aantal nederlandse en engelse tutorials/boeken gezocht maar km er maar niet uit :cry: 'wel iets over programma afsluiten oid gelezen... ik weet dat je, als je een functie wilt maken, je dit ook kan/moet gebruiken, maar waarvoor :( iemand beetje uitleg over .?[b:3e536367be]return [/b:3e536367be]??[/quote:3e536367be] [color=blue:3e536367be]return[/color:3e536367be] heeft in het kort als functie: Het (voortijdig) beeindigen van een functie/procedure en eventueel een resultaat terugsturen aan de aanroeper. [i:3e536367be]"Achter r e t u r n mag een willekeurige expressie staan: return expressie; Een functie hoeft niet altijd een resultaat terug te sturen; met een r e t u r n -statement zonder expressie wordt de besturing aan de aanroepende functie overgedragen zonder een resultaat terug te sturen. Ook als de rechter accolade waarmee een functie wordt afgesloten wordt bereikt zonder een resultaat te hebben verkregen, wordt de besturing overgedragen aan de aanroepende functie zonder daarbij een resultaat te sturen. Bovendien mag een aanroepende functie het door de aangeroepen functie gestuurde resultaat negeren. Het is u misschien opgevallen dat aan het einde van m a i n een r e t u r n -statement staat; m a i n is gewoon een functie en kan dus net als elke andere functie een resultaat sturen naar de omgeving van waaruit m a i n is aangeroepen. Die omgeving is in het geval van m a i n de omgeving waarbinnen het programma wordt uitgevoerd; het resultaat van m a i n levert informatie over de wijze waarop het programma is beeindigd. Gewoonlijk duidt nul op een normale beeindiging; waarden ongelijk aan nul geven aan dat zich bij beeindiging van het programma abnormale of foutcondities hebben voorgedaan. Tot nu toe hebben we terwille van de eenvoud in de functie m a i n geen r e t u r n -statement gebruikt. Maar van nu af aan doen we dat wel om de lezer er steeds op te wijzen dat een programma zijn omgeving dient te informeren over de condities waaronder het programma is beeindigd."[/i:3e536367be] [b:3e536367be]bron: C handboek, Brian Kernighan & Dennis M. Ritchie[/b:3e536367be]
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...