Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

24.07.2012, 09:03

Schleife mit bestimmter Taste abbrechen

Hallo Leute
Ich bin gerade dabei mir ein Programm zu schreiben, dass immer den Buchstaben "X" auf der Konsole ausgibt bis man den Buchstaben "Y" drückt. Das Problem ist nur, wenn man das mit getch() oder cin löst wartet das Programm ja darauf, dass man etwas macht. Dann habe ich die Funktion kbhit() gefunden mit der ich die Schleife mit einer beliebigen Taste unterbrechen konnte. Aber ich will das Programm ja mit der "Y" Taste beenden und nicht mit irgendeiner beliebigen. Habt ihr vllt. eine Lösung mit der man das Problem beheben könnte? Hier ist der Quellcode:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Programm
//
#include <iostream>
#include <conio.h>

using namespace std;

int main ()
{
    while (kbhit() == false)
    {
        cout << "x";
    }
    getch();
    getch();

    return 0;
}

2

24.07.2012, 09:34

versuchs mal mit:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
while(true)
{
    if(kbhit())
    {
        int key = getch();
        if(key == 'Y')
            break;
    }
    cout<<"X";
}

3

24.07.2012, 14:29

Vielen Dank für deine Antwort mir ist gar nicht eingefallen, dass ich ja abfragen kann ob überhaupt eine Taste eingegeben wurde.

Werbeanzeige