get_time не работает должным образом - PullRequest
0 голосов
/ 13 июня 2018

Я играл с функциями 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.

Кто-нибудь, кто мог бы просветить меня, что идет не так?

1 Ответ

0 голосов
/ 13 июня 2018

в ссылке OP дал четко сказано

Пример

примечание: выберите clang для наблюдения за выводом.libstdc ++ неправильно реализует спецификатор% b: ошибка 78714

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...