是否有一个平台不将 std::time_t 表示为 unix 时间
Is there a platform where std::time_t is not represented as unix time?
来自 http://www.cplusplus.com/reference/ctime/time_t :
time_t
能够表示时间的基本算术类型的别名,如函数时间返回的时间。
由于历史原因,它通常实现为一个整数值,表示自 1970 年 1 月 1 日 00:00 UTC 以来经过的秒数(即 unix 时间戳)。尽管库可以使用替代时间表示来实现此类型。
可移植程序不应直接使用此类型的值,而应始终依赖于对标准库元素的调用来将它们转换为可移植类型。
有人知道这种实现的例子,其中std::time_t不表示为unix时间吗?
根据 §17.6.4.3.4/1:
对于标准 C 库中的每个类型 T,184 类型::T 和 std::T 保留给实现,并且在定义时,::T 应与 std::T 相同。
184 ...time_t......
因此,time_t
和 std::time_t
都是实现定义的类型。提示在某种程度上是正确的。
POSIX兼容系统尝试将其实现为Unix时间,但POSIX不基于C++标准,反之亦然。也许将来会在特定的嵌入式系统中创建一个具有不同time_t
的C++编译器......
相关文章:
- 表示"accepting anything for this template argument" C++概念的通配符
- 如何将ampl中的集合表示为c++中的向量
- 在UNIX系统中使用DIR查找文件的字节大小
- 当套接字连接断开时检测C/C++Unix
- std::is_base_of表示ctor编译错误
- 输入中的字符串数未知(以字母表示)
- 我可以信任表示整数的浮点或双精度来保持精度吗
- c++模板来表示多项式
- C++:floor unix时间戳到UTC月份
- 如何在C/C++中用FD_set Unix设置套接字文件描述符
- 询问在设计我的手臂模拟器功能表示格式1
- CMakeLists.txt中的命名空间表示法
- C++射线示踪剂ppm表示没有足够的数据来显示图像
- 如何计算Big-O表示法中的平均渐近运行时间
- 我应该如何表示我拥有的连续元素序列?
- 在C++中,使用带有 std::optional 参数的函数<T>来表示可选参数是否有意义?
- 在 std::无符号字符的向量处存储 int 的十六进制表示形式
- 表示类模板C++空类型
- 具有所表示类的相同构造函数签名的代理类模板
- 是否有一个平台不将 std::time_t 表示为 unix 时间