Почему C++ стандартная функция поддержки strftime, а не strptime?

Почему C++ стандартная функция поддержки strftime() но нет strptime()? strftime() Можно изменить время на строку, но нет функции, которая может изменить строку обратно во времени.

На Posix strptime() доступна как C-подобная функция, с ее помощью нужно позаботиться о потенциальной проблеме смешанного кода C и C++.

1 ответ

Решение

Я не являюсь частью комитета по стандартам, но здесь идет:

strptime определяется документами ISO/IEC 9945 (по существу, спецификацией Single Unix / POSIX). Он не является частью документов по стандартам C 9899: 1990 или 9899: 1999 (и я не думаю, что это часть 9899:2011, хотя я не могу быть уверен, поскольку у меня его еще нет).

Поскольку в стандартах C++ предусмотрены только уровни совместимости с их двоюродным братом, вы не найдете strptime, предписанный документами стандартов C++ 14882: 1998 или 14882: 2011.

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