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++ (beginner?) probleem

Anoniem
MV-Software
9 antwoorden
  • Ik ben sinds kort bezig C++ te leren en gebruik nu het programma dev-c++ van bloodshed. (ik ben microsoft visual 2010 aan het installeren).

    Ik klik nieuw –> project –> selecteer console application –> geef aan dat het een c++ project is en maak het project aan.

    Vervolgens geef ik het volgende in:

    [quote:4fee6b4d4b]
    #include <iostream.h>

    int main ()
    {
    cout << "My first program";
    return 0;
    }
    [/quote:4fee6b4d4b]

    Daarna compileer ik het en klik op uitvoeren….dan krijg ik een flits van een msdos/opdrachtprompt scherm en verder niets….wat gaat hier fout?
  • Niets, het werkt namelijk ;)

    Hij print naar de console my first program en sluit daarna je applicatie weer af omdat hij verder niets te doen heeft…

    gooi de volgende regel in je applicatie, na cout

    system("pause";);

    Dan pauzeert het systeem, tot je enter drukt ;)
  • oke, vreemd, want volgens dat ebook (C++ Fundamentals - FunctionX press uit de practical learning series) zou het zoals ik het ingetypt heb ook moeten werken, dat het blijft staan. (werkt iig wel dat system("pause";); )

    Waar is dat "Return 0;" voor? wat als ik er een ander cijfer ofzo neerzet?
  • De code die je hebt gepost is trouwens wel erg gedateerd. Tegenwoordig (sinds ongeveer het jaar 2001-2002) doe je dit zo:
    [code:1:b08507bab9]#include <iostream>

    int main()
    {
    std::cout << "My first program";
    return 0;
    }[/code:1:b08507bab9]
    of
    [code:1:b08507bab9]#include <iostream>

    using namespace std;

    int main()
    {
    cout << "My first program";
    return 0;
    }[/code:1:b08507bab9]

    [quote:b08507bab9]Waar is dat "Return 0;" voor? wat als ik er een ander cijfer ofzo neerzet?[/quote:b08507bab9]
    Met "return" beëindig je een functie en lever je een waarde op. Bijvoorbeeld:
    [code:1:b08507bab9]int negen()
    {
    return 9;
    }

    int getal = negen();[/code:1:b08507bab9]
    In deze (simpele, maar zinloze) code (als je er een volledig C++-programma van zou maken) krijgt de variabele "getal" de waarde die de functie "negen" oplevert (in dit geval 9).

    De "main" functie is een speciale functie, omdat deze automatisch wordt aangeroepen als je je programma start. Het is een goede gewoonte om, als alles goed is gegaan, nul op te leveren en anders een ander getal. Je kan zelf meerdere getallen gebruiken om verschillende problemen aan te geven (natuurlijk moet je bij een fout ook een "gewone" foutmelding geven). Deze waarde kan je namelijk opvragen (al zou ik niet weten hoe je dit doet in een DOS/Windows omgeving) en, als je bijvoorbeeld het programma door een script laat draaien, dan kan je zo reageren op evt. fouten.
  • oke, dank voor je goede uitleg. Ondanks dat snap ik dat die met getallen bij return nog steeds niet ;)

    Daarbij had ik ook graag geweten wat "std::" en "using namespace std;" betekent. Ben ik nog niet tegen gekomen in het boek ;)

    Je zegt gedateerd…kun je een ander/geupdate ebook aanbevelen?
  • p.s. Als je je programma in een command prompt op start dan sluit deze niet en heb je geen pauze nodig.
  • hoe doe ik dat?
  • Windowstoets + R > cmd

    In je command schermpje navigeer naar de exe file die visual studio voor je gebouwd heeft. (Standaard staat hij hier : Win xp c:\documents and settings\*gebruikersnaam*\Visual studio *versienummer*\projects\*JouwProject*\Debug\*JouwProject*.exe

    dus stel ik heb visual studio 2010 en me project heet Henk.

    c:\documents and settings\piet\visual studio 2010\projects\henk\debug\henk.exe

    Succes!
  • [quote:7a2b866e17="remco p"]oke, dank voor je goede uitleg. Ondanks dat snap ik dat die met getallen bij return nog steeds niet ;)[/quote:7a2b866e17]
    Als het goed is wordt dit in elk C++-boek behandeld, dus je komt vanzelf (een uitgebreidere) uitleg tegen.

    [quote:7a2b866e17="remco p"]Daarbij had ik ook graag geweten wat "std::" en "using namespace std;" betekent. Ben ik nog niet tegen gekomen in het boek ;)[/quote:7a2b866e17]
    Daarmee geef je aan dat het in de namespace (naamruimte in goed Nederlands) "std" (standaard) zit. Een paar leuke voorbeelden van wat je met naamruimtes kan doen kan je vinden op http://www.cplusplus.com/doc/tutorial/namespaces/

    [quote:7a2b866e17="remco p"]Je zegt gedateerd…kun je een ander/geupdate ebook aanbevelen?[/quote:7a2b866e17]
    Ik heb zelf C++ geleerd met een gedateerd boek (dat op dat moment nog niet gedateerd was), dus ik kan je helaas niks aanbevelen.

Beantwoord deze vraag

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