while

Status
Niet open voor verdere reacties.

bobiaan

Gebruiker
Lid geworden
13 jan 2007
Berichten
39
als er staat

while(!key[KEY_ESC)
{
blabla();
}

betekent dat dan dat hij blabla() uitvoert totdat key escape is gedrukt (dat hij dan meteen stopt), of voert hij blabla dan nog 1 keer uit nadat je escp hebt gedrukt?(dus als de while-lus weer 1 keer geweest is en terug gaat naar het begin)
 
Hij begint en ziet:
Hey, Esc is niet ingedrukt, ik doe wat er staat..
dan weer, hey, Esc is niet ingedrukt, ik doe wat er staat.
Dan druk je Esc in.
En het programma dan zo, hey Esc is "niet niet"(oftewijl, "wel") ingedrukt, dus ik doe niet meer wat er staat en knal uit de while lus.
 
Laatst bewerkt:
Hij begint en ziet:
Hey, Esc is niet ingedrukt, ik doe wat er staat..
dan weer, hey, Esc is niet ingedrukt, ik doe wat er staat.
Dan druk je Esc in.
En het programma dan zo, hey Esc is "niet niet"(oftewijl, "wel") ingedrukt, dus ik doe niet meer wat er staat en knal uit de while lus.


ik zal een beter voorbeeld noemen

while(!key[KEY_ESC])
{
blabla();
functie();
cout >> "typ een getal";
cin << getal;
getalberekening(getal);
tweedeGetal = getal;
tweedeGetal *=2;
}

stel bij deze lus. hij vraagt om cin getal. als je dan niet een getal invoerd, maar esc indrukt. (dus als de lus nog niet is afgelopen) stopt de lus dan meteen? of moet je eerst nog een getal intypen en gaatie dan getalberekening doen en dan die tweedegetal gedoe?

ik bedoel dus of de lus meteen stopt als je esc indrukt, of dat hij eerst die lus nog afmaakt en dan niet aan de volgende begint.
 
nou test het dan ofzo he? dat hoef je toch niet hier te vragen. kan je proefondervindelijk toch vaststellen
 
ik zal een beter voorbeeld noemen

while(!key[KEY_ESC])
{
blabla();
functie();
cout >> "typ een getal";
cin << getal;
getalberekening(getal);
tweedeGetal = getal;
tweedeGetal *=2;
}

stel bij deze lus. hij vraagt om cin getal. als je dan niet een getal invoerd, maar esc indrukt. (dus als de lus nog niet is afgelopen) stopt de lus dan meteen? of moet je eerst nog een getal intypen en gaatie dan getalberekening doen en dan die tweedegetal gedoe?

ik bedoel dus of de lus meteen stopt als je esc indrukt, of dat hij eerst die lus nog afmaakt en dan niet aan de volgende begint.

Hij maakt eerst de lus af.
Hij kijkt pas weer na of Esc ingedrukt is als hij weer aan het begin van de while is.
 
Hij maakt eerst de lus af.
Hij kijkt pas weer na of Esc ingedrukt is als hij weer aan het begin van de while is.

maar hoe zorg je ervoor dat hij al gelijk ophoud zodra je de esc knop indrukt?

ik wil namelijk dat hij gewoon een programma uitvoert en dat ik op wat voorn moment dan ook een knop kan indrukken en dat hij dat dan uitvoert. bij game maker was dat heel simpel. dan deed je gewoon de press escape butten event en datie dan ermee ophoud, watie aan het doen was. hoe doe je dat in C++?
 
Dan zal je denk ik een "ActionListener" toe moeten voegen.

wat is dit?
is dit de enige manier?
want bij computer spellen kun je altijd op start drukken enzo. je hoeft niet te wachten tot er allemaal dingen gebeuren ofzo. gebruiken ze dat daar ook?
 
Zoek een goede tutorial die begint bij het begin en werk omhoog, na een tijdje word alles duidelijk ^^
 
Code:
while(!key[KEY_ESC)
{
blabla();
}
je kunt dit altijd eens proberen .

je bent een ] vergeten in je while loop .

Code:
while(!key[KEY_ESC])
{
   blabla();
   KEY_ESC = cin.get();
}
 
Laatst bewerkt:
ja tuurlijk ^^, maar wat we je duidelijk willen maken is dat je echt met het begin zal moeten beginnen als je wil leren programmeren en dus niet hier ons alles voor je laten oplossen :P

Over dat meteen stoppen bij esc weet ik niet hoe dat gaat in een console maar met win32 kun je GetAsyncKeystate() gebruiken
 
ik denk voor ESC te laten indrukken dat je scherm sluit , het beste zal zijn met if

de rest doet je zelf , ik ga niet de volledige code geven . Misschien doen wij je huiswerk wel , wie weet . :p
Code:
if (keys[ESC])

ik denk persoonlijk dat je het met de while loop gaat doen , dat je daarmee moeilijkheden zal krijgen .
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan