getche() ersetzen
-
Ich will eine gleiche Funktion wie getche() unter Linux hinbekommen.
Die Eingabe soll immer wieder neu eingelesen werden, so wie es halt getche macht.
Unter Linux hab ich das noch nicht hinbekommen. getchar() ist nicht wirklich in Ordnung.
Kann jemand helfen?#include <iostream> #include <stdio.h> using namespace std; class MautStelle { unsigned int anzahl; double einnahmen; public: MautStelle() { anzahl=0; einnahmen=0; } void bezahltAuto() { anzahl++; einnahmen += 3.25; } void nichtbezahltAuto() { anzahl++; } void Anzeige() { cout << "Ergebnis:\n"; cout << "\nAnzahl der Autos: " << anzahl; cout << "\nEinnahmen sind: " << einnahmen << endl; } }; int main() { MautStelle Maut1; char eingabe; cout << "Machen sie die Eingabe [b, n], Ergebnis mit Escape:\n"; cout << "[B]ezahlt, [N]icht bezahlt\n"; do{ eingabe = getchar(); // getche() in Borland switch(eingabe) { case 'b' : Maut1.bezahltAuto(); break; case 'n' : Maut1.nichtbezahltAuto(); break; //default : cout << "\nFalsche Eingabe!"; } } while (eingabe != 27); Maut1.Anzeige(); return 0; }
-
Hallo,
schau mal in die Linux/Unix-FAQ hier im Forum.
mfg
v R