Как преобразовать timeval в time_t? Я пытаюсь преобразовать: umtp-> ut_tv в time_t, поэтому я могу использовать diffftime (a, b).Преобразование timeval в time_t
struct {
int32_t tv_sec; /* Seconds */
int32_t tv_usec; /* Microseconds */
} ut_tv; /* Time entry was made */
struct timeval ut_tv; /* Time entry was made */
Вы уверены, что микросекунды не имеют значения для вас? Если это так, то вам нужно написать собственную 'struct timeval difftimeval (const struct timeval * t1, const struct timeval * t2);' function, которая возвращает 't2 - t1'. Или вы можете определить тип возврата как 'double', если хотите, так что он почти совместим с' diffftime() '. –
Кстати, показанный код не будет компилироваться; вы определяете переменную 'ut_tv' дважды с двумя разными типами (как анонимная структура и как' struct timeval'). –
Откуда вы получили это определение 'timeval'? Тип 'tv_sec' должен быть' time_t', и преобразование не требуется, только усечение. –