【发布时间】:2014-03-13 15:37:38
【问题描述】:
为什么 C++ 标准支持函数 strftime() 而不是 strptime()? strftime() 可用于将时间更改为字符串,但没有可以将字符串更改回时间的函数。
在 Posix 上,strptime() 可用作类 C 函数,使用它需要注意混合 C 和 C++ 代码的潜在问题。
【问题讨论】:
-
我几乎为此 +1 了,因为这似乎是一个公平的问题(此功能 不 存在于 C 中,而且它确实奇怪),但后来我重新考虑了,因为我认为这个问题实际上无法回答。
-
好问题。我认为在 C++ 中序列化时间和日期的函数通常很少且体积庞大。如果期待更多来自 C++11 chrono
-
@LightnessRacesinOrbit 好吧,参与 C++ 标准化过程的人确实经常这样做,所以他们可能有一个(f)实际答案。
-
我认为主要原因是它不仅取决于语言环境,而且你有很多不同的方法可以在给定的语言环境中写入日期。那将是一个大模块,或者一个不完整的解决方案。 (至少那是我的 2 美分)
-
这是一个 Posix 函数。标准不会尝试迎合特定的操作系统 API,即使它们看起来像 C 库函数。
标签: c++ c posix strftime strptime