Как преобразовать дату/время в количество секунд чтобы хранить в int32
?
#include <iostream>
#include <boost/date_time/posix_time/posix_time.hpp>
int main()
{
boost::posix_time::ptime t = boost::posix_time::second_clock::universal_time();
std::cout << t << std::endl;
t += boost::posix_time::minutes(1);
std::cout << t << std::endl;
return 0;
}
И есть ли еще какой-то способ получить значение времени по UTC?
boost::posix_time::to_time_t(t)
Можно получить в виде количества секунд используя функцию time()
с нулевым аргументом: auto t = time(nullptr)
(библиотека <ctime>
). Преобразовать полученный результат в utc можно используя функцию из той же библиотеки localtime_s()
: 1-й аргумент указатель на структуру tm
, куда необходимо записать результат, 2-й - указатель на значение времени в секундах
#include <ctime>
#include <iostream>
int main()
{
auto t = time(nullptr);
tm ct;
localtime_s(&ct, &t);
std::cout << ct.tm_year << "." << ct.tm_mon << "." << ct.tm_mday << " ";
std::cout << ct.tm_hour << ":" << ct.tm_min << ":" << ct.tm_sec << "\n";
return 0;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
При сборке этого проекта: https://githubcom/diegocr/vcam с помощью MinGW возникает ошибка:
Почему этот код не работает? Неужели в C++ switch не принимает тип string это же чушь какая-то