Timer Programm Hilfe



  • Hallo,

    ich bin noch Anfänger in C++ und möchte einen Timer programmieren, der bei 0:0:0 (Stunden, Minuten, Sekunden) anfängt hochzuzählen.

    Das Problem ist, wenn das Programm startet, wird "0:0:0" ausgegeben, aber er zählt nicht hoch.

    Hier mein Code:

    void Timer()
    {
    	std::cout<<'\n'<<h<<':'<<m<<':'<<s;
    
    	while(true)
    	{		
    		if(s>=59)
    		{
    			m++;
    			s=0;
    		}
    		else if(m>=59 && s>=59)
    		{
    			h++;
    			m=0;
    		}
    
    		s++;
    
    		Sleep(1000);		
    	}
    }
    

    Könnt ihr mir da helfen, ich weiß wirklich nicht mehr weiter...

    Gruß


  • Mod

    Beschreibe mal genau, was dein Problem ist. An sich sehe ich nichts großartig falsches an deinem Code, außer, dass du einen sehr merkwürdigen Effekt bekommen wirst, wenn die Minuten überlaufen. Und du gibst natürlich überhaupt nichts aus, d.h. dein Programm zählt zwar, aber das sieht man gar nicht. Ist dies dein Problem? Lies dir bitte mal den ersten Link in meiner Signatur durch, da findest du Tipps, wie man möglichst gute Fragen stellt.



  • Danke für die Hilfe, ohne dich wäre ich nie draufgekommen, dass ich std::cout in die Schleife packen muss(peinlich, ich weiß ^^)

    Den Effekt, der auftritt, wenn die Minuten hochzählen werde ich selbst herausfinden.

    Gruß


Anmelden zum Antworten