Конвертировать месяц / день / год / время в timeval в C/C++

В C/C++ предположим, что у меня есть следующие значения:

int year = 2010;
int month = 6;
int day = 15;
int hour = 14;
int minute = 52;
int seconds = 34;
int microseconds = 141231;

Какой самый простой способ преобразовать это в timeval? Я думаю, что timeval - это время с 1 января 1970 года? Но вычислять это вручную каждый раз кажется очень утомительным. Какой самый простой (и самый быстрый) способ сделать это?

Спасибо

2 ответа

Ты можешь использовать mktime(3) преобразовать struct tm структура в time_t, После того, как у вас есть time_t, вы можете скопировать его и ваши значения микросекунд непосредственно в struct timeval состав.

Вы можете посмотреть в std::mktime(),

Другие вопросы по тегам