timespec
Von cppreference.com
| Definiert in Header <time.h> |
||
| struct timespec; |
(seit C11) | |
Struktur, die ein Intervall in Sekunden und Nanosekunden unterteilt.
Inhalt |
[bearbeiten] Member-Objekte
| Mitglied | Beschreibung |
time_t tv_sec |
Ganze Sekunden (gültige Werte sind >= 0) |
/* siehe unten */ tv_nsec |
Nanosekunden (gültige Werte sind [0, 999999999]) |
|
Der Typ von |
(bis C23) |
|
Der Typ von |
(seit C23) |
Die Deklarationsreihenfolge von tv_sec und tv_nsec ist nicht spezifiziert. Implementierungen können andere Member zu struct timespec hinzufügen.
[bearbeiten] Hinweise
Der Typ von tv_nsec ist auf einigen Plattformen long long, was erst seit C23 konform ist.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <stdint.h> #include <stdio.h> #include <time.h> int main(void) { struct timespec ts; timespec_get(&ts, TIME_UTC); char buff[100]; strftime(buff, sizeof buff, "%D %T", gmtime(&ts.tv_sec)); printf("Current time: %s.%09ld UTC\n", buff, ts.tv_nsec); printf("Raw timespec.tv_sec: %jd\n", (intmax_t)ts.tv_sec); printf("Raw timespec.tv_nsec: %09ld\n", ts.tv_nsec); }
Mögliche Ausgabe
Current time: 04/04/24 14:45:17.885909786 UTC Raw timespec.tv_sec: 1712241917 Raw timespec.tv_nsec: 885909786
[bearbeiten] Referenzen
- C23-Standard (ISO/IEC 9899:2024)
- 7.27.1/3 Komponenten der Zeit (p: TBD)
- C17-Standard (ISO/IEC 9899:2018)
- 7.27.1/3 Komponenten der Zeit (p: 284)
- C11-Standard (ISO/IEC 9899:2011)
- 7.27.1/3 Komponenten der Zeit (p: 388)
[bearbeiten] Siehe auch
| (C11) |
gibt die Kalenderzeit in Sekunden und Nanosekunden basierend auf einer gegebenen Zeitbasis zurück (Funktion) |
| Typ für Kalenderzeit (Struktur) | |
| C++ Dokumentation für timespec
| |