PDA

View Full Version : data, ora, counter in c per linux


Isg-Emu
17-04-2007, 09:48
In un programma c per linux dovrei implementare un qualcosa che conti il tempo tra un'istruzione e l'altra e lo stampi pure su video...
come si implementa il comando date in c ?
c'è anche un modo per far visualizzare l'ora (che dovrebbe essere una variante di date se non sbaglio) ?
e un semplice contatore ? che visualizzi uno scatto al secondo ?
grazie

andbin
17-04-2007, 10:18
In un programma c per linux dovrei implementare un qualcosa che conti il tempo tra un'istruzione e l'altra e lo stampi pure su video...
come si implementa il comando date in c ?Quindi vuoi determinare quanto tempo è trascorso tra due istanti. Innanzitutto dovresti specificare quale è la risoluzione che vuoi avere.
La libreria standard del "C" mette a disposizione una serie di funzioni per gestire data/ora che fanno tutte capo all'include <time.h>. La risoluzione di queste funzioni è il secondo. Se vuoi una risoluzione più bassa, devi rivolgerti verso funzioni specifiche del sistema e non standard (es. gettimeofday).

c'è anche un modo per far visualizzare l'ora (che dovrebbe essere una variante di date se non sbaglio) ?Certo, dipende con quale formato vuoi visualizzare la data/ora. Ci sono le funzioni ctime/asctime ma il formato della data/ora è fisso. C'è la funzione strftime, il cui formato è personalizzabile (vedi un mio esempio <qui> (http://www.hwupgrade.it/forum/showpost.php?p=12963734&postcount=4)).

e un semplice contatore ? che visualizzi uno scatto al secondo ?Qui dipende da come vuoi gestire la temporizzazione (in polling o tramite timer o altro).