getch(); problem beim ende des Programms (C++)



  • Also wenn ich zum Beispiel den Quelltext schreibe

    Code:

    #include<stdlib.h>
    #include<iostream.h>
    #include<conio.h>

    long zaehler, zahl, ziffer, vergleich = 1;
    long *Vzaehler = &zaehler, *Vzahl = &zahl, *Vziffer = &ziffer,
    *Vvergleich = &vergleich;

    void main()
    {
    system("cls");

    cout <<"Progamm z\x84hlt Ziffern von Longwert\n";
    cout << "Bitte Zahl eingeben: ";
    cin >> *Vzahl;

    while(*Vzaehler <= *Vzahl)
    {
    ++*Vzaehler;
    if(*Vzaehler % *Vvergleich == 0)
    {
    *Vvergleich *=10;
    ++*Vziffer;
    }

    }

    cout << "Anzahl der Ziffern = " << ziffer;

    getch();

    }

    um die Ziffern einer Long variable mit hilfe von Zeigern zu Zählen dann erwarte ich eigentlich das das Programm, wenn man es über die Dos .exe Startet Fehlerfrei läuft aber nachdem ich den Zeiger *Vzahl eingegeben habe und die Berechnung Stattgefunden hat
    Erwarte ich normalerweise, das die getch(); - Anweisung hinter der Anweisung cout Vollendet wird aber Sie wird Vorher ausgeführt.
    Dieses Problem tritt bei vielen Programmen bei mir auf dieses Programm ist nur ein Bsp.
    Bitte schaut euch das mal genauer an und sagt mir woran das in hier liegen könnte oder was ich Falsch gemacht habe.
    Danke



  • Schon mal cout.flush(); versucht ?

    Devil



  • danke den Befehl kannte ich noch nicht was bewirkt der genau?



  • cout.flush leert den Ausgabestrom, und leitet ihn zur Standard Ausgabe dem Bildschirm.


Anmelden zum Antworten