Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

C++ "return 0;"

MvdBoom
5 antwoorden
  • Hallo!
    Ik programmeer in C++ simpele programma's.
    Ik heb geleerd om elk programma af te sluiten met "return 0:", hierdoor gaat de computer terug naar het besturingssysteem (in mijn geval Windows of Linux).
    Ik wil graag dat het programma pas afsluit als de gebruiker dat opgeeft. IK heb i.p.v. return 0 geprobeerd om het programma in een loop te laten lopen. Elk cijfer stelt dan een keuze voor, als de gebruiker een te hoog cijfer intypt dan stopt de loop en sluit het programma af. Ik ben hier niet echt tevreden mee en ik zou dan ook graag willen weten op welke manier ik return 0 kan vervangen.
  • Onderstaande code wacht op een 'q' of een 'e' en sluit dan af. De 'q' of 'e' worden dan doorgegeven aan de shell via het return statement.

    Het getal dat je terug geeft aan de shell kan gebruikt worden in scripts om te testen op bv fouten.

    Ik weet niet of dit je op het goede spoor zet, laat maar horen als je meer info nodig hebt.

    [code:1:47f8be7dc4]
    #include <stdio.h>

    int main()
    {
    char ch=0;

    while(ch!='q' && ch !='e')
    {
    ch=getchar();
    }
    printf("done, returning '%c'
    ",ch);
    return ch;
    }[/code:1:47f8be7dc4]PS getest onder Linux.
  • in C++ zoals de TS vroeg ;-):

    Code vraagt een getal als keuze en kijkt of de input van de gebruiker geldig is.
    Ja-> laat keuze zien.
    Nee-> vraag opnieuw om keuze.

    Als een keuzenummer wordt gegeven dat buiten het bereik (hier 0 t/m 2) valt stopt het programma en geeft het de laatste keuze door aan het systeem via het return-statement van de main()-functie.

    [code:1:da6c7e93f7]
    #include <iostream>

    int main()
    {
    int keuze=0;
    const int laagste_keuze=0;
    const int hoogste_keuze=2;
    do
    {
    std::cout<<"
    Typ het nummer van de actie die u wilt uitvoeren: ";
    std::cin>>keuze;


    if(std::cin)
    { //goede input
    std::cout<<"U keuze was: "<<keuze<<std::endl;
    }
    else
    { //slechte input
    std::cin.clear();
    std::cin.ignore(INT_MAX,'
    ');
    keuze=laagste_keuze;
    }

    }while(keuze>=laagste_keuze && keuze<=hoogste_keuze);

    std::cout<<"Einde van het programma
    ";

    return(keuze);
    }
    [/code:1:da6c7e93f7]

    Andreas

    "I have a rendezvous with Death" - Alan Seeger
  • [quote:f9d45ccedd="AndreasV"]in C++ zoals de TS vroeg ;-):[/quote:f9d45ccedd]Tja, dat is aan mij niet besteed; ik probeer er zover mogelijk vandaan te blijven en tot nu toe lukt dat redelijk 8)
  • Is het zo'n vervelend taaltje dan, dat C++? ;-)

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.