![]() |
|
|||||
|
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);
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||