Hallo,
mach mal vor das getch() ein cout << endl;
müsste dann gehen.
Schönen Guten Tag.
Ich hab ein kleines Problem und ich hoffe jemand von euch kann mir helfen.
Wir lernen momentan C++ Programmierung und schreiben Konsolen Anwendungen.
Wenn ich jetzt im Quelltext folgendes schreibe:
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
system("cls");
cout<<"Guten Tag, dies ist nur ein Test Programm.";
cout<<"Jetzt geben wir einige Daten aus und alles wird gelöscht, wenn Sie eine Eingabe machen!";
cout<<"DatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDaten";
cout<<"DatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDatenDaten";
getch();
cout<<"Haha Daten werden erst später gelöscht.";
cout<<"Nämlich jetzt!";
system("cls");
cout<<"Der Bildschirm ist gereinigt und einen schönen Tag noch";
}
sollte normalerweise zu Beginn des Programms und mittendrin der Bildschirm "gereinigt" werden. Aber weder das Bildschirm reinigen noch das getch(); werden an den richtigen Stellen abgearbeitet, sondern schon viel früher.
Ich hab jetzt leider nicht den Orginal Quelltext unseres Programms vorliegen, aber es war eins mit drei Unterfunktionen und Zeigervariablen. Die Main Funktion war in eine Fußgesteuerte Schleife gepackt. Als aller erstes sollte er in dieser Schleife einen Clearscreen durchführen und als aller letztes ein getch(), dann sollte die Durchführungsbedingung geprüft werden und die Schleife je nach Ausgang der Prüfung von vorne Beginnen. Das getch() hat er aber schon nach den Benutzereingaben abgearbeitet und das Clearscreen drekt danach, dadurch sieht das Programm schlecht aus und es funktioniert nicht so wie es soll.
Unser Lehrer konnte mir auch nicht weiterhelfen, vielleicht weiß jemand von euch warum das so ist, oder was ich dagegen tun kann.
Ich hab Microsoft Visual C++ 6.0 Developer Studio benutzt.
Gruß
Lotto2398
Anzeige
Hallo,
mach mal vor das getch() ein cout << endl;
müsste dann gehen.
also bei uns heisst das
getchar();
und das problem
system("cls")
habe ich bei der beta2 version von MVSS auch...
.......
das Säubern des Bildschirms lässt sich auch mit clrscr(); lösen, denn das wird dann sofort verarbeitet, wo es im Quelltext auftaucht. Ich hoffe, ich habe dich richtig verstanden.
Lesezeichen