Fragen zu C++! Bitte helft mir!?
Hey!
Ich mache hier gerade mein (Schüler- ) Praktikum und bin gerade dabei ein kleines Programm zu schreiben. Der Code sieht bisher so aus:
char Input;
string Path;
std::cout << "Programm-Name" << std::endl
<< "===============" << std::endl << std::endl
<< "Please select:" << std::endl
<< "1. Auswahl 1" << std::endl
<< "2. Quit" << std::endl;
std::cin >> Input;
std::cout << "Input was: " << Input << std::endl << std::endl;
// Hier würde ich eigentlich dann gerne “Input was: ‚Eingabe’“ stehen haben (also das das Input gleich hinter „Input was“ geschrieben wird. Was muss ich statt des „std::endl;“ hinschreiben, damit man das gleich dahinter schreiben kann?
if (Input=1) {
std::cout << "Programm-Name" << std::endl
<< "===============" << std::endl << std::endl
<< "Please specify file path:" << std::endl;
std::getline(cin, Path);
// (Hier bin ich noch nicht fertig aber damit sollte ich auch kein Problem haben...)
}
else {
std::cout << "Beendet" << std::endl;
}
Mir hat nie jemand beigebracht wie man es hinbekommt, dass, wenn jemand z.B. "1" + "ENTER" drückt, die alte schrift verschwindet und er wieder oben anfängt zu schreiben. Mein Chef will von mir, dass das nicht unendlich lang wird sondern dass es nach der Eingabe oben wieder anfängt. Ich hoffe ihr wisst was ich meine.
Und was muss ich eingeben damit er bei "2" + "Enter" auch Quit machen? Wie ist der Befehl um das Programm zu beenden?
Außerdem habe ich ein Problem mit der Eingabe. Wenn ich z.B. „1“ + „ENTER“ eingegeben habe und er dann nach dem Path fragt, kann ich nichts mehr eingeben. Was genau muss ich machen admit ich überhaupt irgendetwas schreiben kann?
Ich weiß die Fragen sind eher Anfänger-Probleme, aber um ehrlich zu sein bin ich das auch noch :D
Also nicht lachen, helft mir lieber, dann werd ich auch schlauer und besser ;)
Danke,
MoneyMan
@Quasimodos Klon Danke das mit der Eingabe hat super geklappt :D String habe ich hier aus einem C++ Buch. Da steht. Die Eingabe von Strings unterscheidet sich nicht von der Eingabe von Zahlen.
Ich wollte, dass man dort als Eingabe den ganzen Pfad (also D:\Test\Cpp\Test1/Datei.datei) eingeben kann und er den dann an eine andere Operation weitergibt, die dann diese Datei ausliest und verarbeitet. Den rest habe ich schon, er fehlt eben nur noch die Benutzeroberfläche...
Mein größtes Problem ist eben das neue Fenste, also das er wieder oben anfängt!
ok... danke das zweite hat mir auch weiter geholfen, das habe ich gar nicht gemerkt. Kann man denn auch nur 2 Zeichen zulassen, also 1 und 2? Oder geht das nicht?
Bildschirm löschen, da gab's glaube ich ein
clrscr();
- Google sagt ja, und zwar in der Bibliothek
#include <conio.h>
also das hat leider nicht funktioniert... da kommt ne fehlermeldung:
In file included from Test.cpp:88:
../../../../include/conio.h: In member function `void TestManager::Menu()':
../../../../include/conio.h:21: error: expected unqualified-id before string constant
CGTManager.cpp:108: error: `clrscr' was not declared in this scope
CGTManager.cpp:117: error: `clrscr' was not declared in this scope
make: *** Error 1
hm ich hab das mit dem 1 oder 2 jetzt so gelöst... ist vielleicht nicht die eleganteste methode aber sie scheint zu funktionieren...:
if (Input == '1' ){
clrscr(); // das geht leider nicht
std::cout << "Programm" << std::endl
<< "===============" << std::endl << std::endl
<< "Please specify file path:" << std::endl;
string Path;
getline(cin, Path);
}
if (Input == '2') {
clear();
std::cout << "Beendet" << std::endl;
}
else {
std::cout << "Error! Wrong input. Only 1 or 2 are accepted!" << std::endl;
}