Computerhilfen.de Logo
Forum
Tipps
News

Countdown Timer in C++

Ich hab ne Frage:

Ich würde gerne in C++ 1.0 ein Programm schreiben in dem auf eine Eingabe ine Timer startet. Der timer sollte von einer bestimmten Zahl bis 0 zählen. Wenn er bei 0 is soll er einen Sound ausgeben!


Antworten zu Countdown Timer in C++:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
3 Leser haben sich bedankt

Naja, den Timer kannst Du mir Hilfe der "time()-Funktion realisieren".
Ich stelle mir das in etwas so vor (nur das Grundgerüst):

#include <stdlib.h>
#include <time.h>

int main()
{
  int countsec; //runterzuzählende Zeit
  //hier dann die Eingabe von countsec
  bool flag = true;
  int start = time(NULL);
  do
  {
    if(time(NULL)>= start + countsec) flag = false;
    //hier optional noch die Ausgabe der bisher vergangenen Zeit (-> time(NULL) - start)
    //oder auch der noch verbleibenden (-> start + countsec - time(NULL)
  }
  while(flag);
  //hier dann die Soundausgabe oder whatever
}

Allerdings habe ich mich noch nie mit Soundausgabe beschäftigt.

Gruß Spawn

EDIT: Falls Du eine "echte" Windows-Anwendung schreiben willst, bekommst Du evtl Probleme, wenn Du in der Schleife etwas ausgeben willst, da die (zeitbegrenzte) Endlosschleife die Ressourcen, die das Programm braucht, mächtig ausnutzen wird.
« Letzte Änderung: 20.05.05, 12:21:19 von Spawn »

#include <stdlib.h>
#include <windows.h>

int main()
{
  long timeout = 300; // also 300 Millisekunden
  HANDLE timer = ::CreateWaitableTimer( 0, true, 0 );
  LARGE_INTEGER endTime = { timeout };
  endTime.QuadPart *= -10000;
  ::SetWaitableTimer( timer, &endTime, 0, 0, 0, false );

  if( WaitForSingleObject( timer, 0 ) == WAIT_OBJECT_0 )
  {
     beep();
  }
  else { return -1; }
  return 0;
}

PS: nicht getestet, direkt aus der Erinnerung 'gepasted' ...

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Okay, ist wohl eleganter.

Wie sieht das Programm aus wenn ich es wärend einer Soundausgabe verwenden würde ? (Timer zählt runter solange kommt sound...wenn timer bei Null ist hört Sound auf)

du willst das mit einem ganzen track machen?
also das damit zb. eine MP3 Datei gesteuert wird?
oder nur einen system"ton"?


« Java Script FehlerBuch fürs Programmieren »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!