В чем разница между временными и структурными временами?
Я пытаюсь создать код для генерации метки времени. Я нашел две разные структуры, но не ясно, в чем разница? Кто-нибудь может помочь мне понять, в чем разница между этими двумя структурами? struct timespec
а также timespec now
?
1 ответ
Следующая структура:
struct timespec
предоставляется стандартом POSIX.1b, определенным в time.h. Из документации GNU libc, 21.2 Истекшее время:
Тип данных: struct timespec Структура struct timespec представляет прошедшее время. Он объявлен в time.h и имеет следующие члены:
long int tv_sec Представляет количество полных секунд прошедшего времени.
long int tv_nsec Это оставшееся время (доля секунды), представленное в виде числа наносекунд. Это всегда меньше одного миллиарда.
Если вы видели следующее:
timespec now
Кто-то, вероятно, написал typedef для структуры, и "сейчас" будет ссылаться на имя переменной. Если бы вы написали typedef для структуры, не было бы никакой разницы между "struct timespec" и "timespec".
В time.h есть много функций, которые могут вам помочь. Вы можете найти полную документацию здесь: http://pubs.opengroup.org/onlinepubs/007908775/xsh/time.h.html