20080121

C++: wait() function and beep sound output.

#include <iostream>
#include <time.h>

using namespace std;
void wait(int seconds) {
clock_t endwait;
endwait = clock () + seconds * CLOCKS_PER_SEC ;
while (clock() < endwait) {}
}

int main() {
cerr << '\a' << "First beep" << endl;
wait(10);
cerr << '\a' << "Second beep after 10 sec" << endl;
return 0;
}
Το παραπάνω πρόγραμμα δημιουργεί έναν ήχο beep '\a' εμφανίζοντας το μήνυμα "First beep" και κατόπιν περιμένει 10 δευτερόλεπτα μέχρι να ξαναδημιουργήσει τον δεύτερο ήχο beep '\a' και να εμφανίσει το μήνυμα "Second beep after 10 sec".

Links:

2 σχόλια:

Ανώνυμος είπε...

Καλημέρα!
Συγχαρητήρια για το ιστολόγιό σου.

Ερώτηση: Για το beep πότε ή που δίνεται αυτή η εντολή? Μήπως όταν χρησιμοποιούμε ως έξοδο την error console(cerr)?
Αλλά, δεν ακούω τίποτα στα vista (μήπως είναι by default από το OS απενεργοποιημένο το System Beep?) ?

Δεν είχα χρόνο να το δοκιμάσω σε ubuntu...

Χρησιμοποιώ τον gcc και για IDE το dev-c++.

Ευχαριστώ ;)

Georgios Giannopoulos είπε...

Σε microsoft visual studio 2005 η παραπάνω εντολή δουλεύει μια χαρά.. και σε cout. Επίσης υποθέτω ότι θα πρέπει να δουλεύει και σε ubuntu ή σε άλλο λειτουργικό/compiler.

ευχαριστώ για τα σχόλιά σου.. αλλά έχε γενικά υπόψην σου ότι στο συγκεκριμένο blog δημοσιεύω προσωπικές σημειώσεις σε θέματα προγραμματισμού που συναντώ ώστε να τα έχω στο μέλλον ως αναφορά. Έτσι σε πολλές περιπτώσεις μπορεί να μην είμαι επεξηγηματικός.

eggs.in.art (my non-technical blog)