|
|
Zeitfunktionen
UNIX zählt die Zeit in Sekunden seit dem 1.1.1970.
Diesen Wert liefert die Funktion
#include <time.h> time_t time(time_t *t); Als Parameter können Sie einfach 0 angeben. Der Rückgabewert ist zu einem normalen Integerwert kompatibel. Da die wenigsten Menschen mit der Zahl der Sekunden seit dem 1.1.1970 umgehen können, gibt es hilfreiche Umrechnungsfunktionen.
#include <time.h> struct tm *localtime(const time_t *timer);
Die Struktur
struct tm { int tm_sec; /* seconds after the minute - [0,61] */ int tm_min; /* minutes after the hour - [0,59] */ int tm_hour; /* hours - [0,23] */ int tm_mday; /* day of month - [1,31] */ int tm_mon; /* month of year - [0,11] */ int tm_year; /* years since 1900 */ int tm_wday; /* days since Sunday - [0,6] */ int tm_yday; /* days since January 1 - [0,365] */ int tm_isdst; /* daylight savings time flag */ }
Um in Protokolldateien einen Zeitstempel zu hinterlassen, gibt es die recht
praktische Funktion
#include <time.h> char * asctime(const struct tm *t);
Die Funktion
#include <sys/time.h> int gettimeofday(struct timeval *zeit, void *tzp); Die Datenstruktur des ersten Parameters enthält die Sekunden und Mikrosekungen und ist folgendermaßen definiert:
struct timeval { unsigned long tv_sec; /* seconds since Jan. 1, 1970 */ long tv_usec; /* and microseconds */ }; Der zweite Parameter war ursprünglich für die Zeitzone vorgesehen. Allerdings hat die Umsetzung der verschiedenen Sommerzeitregeln als nicht so einfach erwiesen, so dass Sie als zweiten Parameter am besten 0 angeben.
Mit der Funktion
#include <time.h> clock_t clock(void);
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|