//Ввести две даты и вывести сообщение с информацией, какая из двух введенных дат более ранняя
#include <iostream>
#include <string>
#include <iomanip>
#include <sstream>
#include <ctime>
int main()
{
std::string s1{ "19.01.2038" }, s2{ "26.05.1970" }; // даты начиная с 1970 года до 19.01.2038 года
std::stringstream ss1, ss2;
ss1.str(s1);
ss2.str(s2);
std::tm stm1{}, stm2{};
ss1 >> std::get_time(&stm1, "%d.%m.%Y");
ss2 >> std::get_time(&stm2, "%d.%m.%Y");
stm1.tm_isdst = -1;
stm2.tm_isdst = -1;
std::cout << stm1.tm_mday << '.' << stm1.tm_mon << '.' << stm1.tm_year << std::endl;
std::cout << stm2.tm_mday << '.' << stm2.tm_mon << '.' << stm2.tm_year << std::endl;
time_t t1 = std::mktime(&stm1);
time_t t2 = std::mktime(&stm2);
if (t1 != -1 && t2 != -1)
{
double dif = std::difftime(t1, t2);
std::cout << (dif < 0. ? "first" : dif > 0. ? "second" : "equal") << std::endl;
}
else
{
std::cerr << "Error\n";
}
}