Я играл с функциями put_time
и get_time
и столкнулся с некоторыми проблемами.
Я взял этот код:
#include <iostream>
#include <sstream>
#include <locale>
#include <iomanip>
int main()
{
std::tm t = {};
std::istringstream ss("2011-Februar-18 23:12:34");
ss.imbue(std::locale("de_DE.utf-8"));
ss >> std::get_time(&t, "%Y-%b-%d %H:%M:%S");
if (ss.fail()) {
std::cout << "Parse failed\n";
} else {
std::cout << std::put_time(&t, "%c") << '\n';
}
}
С здесь .Тем не менее, при компиляции с gcc версии 8.8.1 и clang версии 6.0.0 у меня не получается выполнить синтаксический анализ, хотя пример cppreference должен работать с clang.
Кто-нибудь, кто мог бы просветить меня, что идет не так?