timespec
|
Определено в заголовочном файле
<time.h>
|
||
|
struct
timespec
;
|
(начиная с C11) | |
Структура, содержащая интервал, разбитый на секунды и наносекунды.
Содержание |
Объекты-члены
| Элемент | Описание |
time_t
tv_sec
|
целые секунды (допустимые значения >= 0 ) |
/* see below */
tv_nsec
|
наносекунды (допустимые значения
[
0
,
999999999
]
)
|
|
Тип
|
(до C23) |
|
Тип
|
(начиная с C23) |
Порядок объявления
tv_sec
и
tv_nsec
не определён. Реализация может добавлять другие члены в
struct
timespec
.
Примечания
Тип
tv_nsec
является
long
long
на некоторых платформах, что соответствует стандарту только начиная с C23.
Пример
#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); }
Возможный вывод:
Current time: 04/04/24 14:45:17.885909786 UTC Raw timespec.tv_sec: 1712241917 Raw timespec.tv_nsec: 885909786
Ссылки
- Стандарт C23 (ISO/IEC 9899:2024):
-
- 7.27.1/3 Компоненты времени (стр.: TBD)
- Стандарт C17 (ISO/IEC 9899:2018):
-
- 7.27.1/3 Компоненты времени (стр: 284)
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.27.1/3 Компоненты времени (стр: 388)
Смотрите также
|
(C11)
|
возвращает календарное время в секундах и наносекундах на основе заданной временной базы
(функция) |
|
тип календарного времени
(структура) |
|
|
C++ documentation
для
timespec
|
|