_USE_32BIT_TIME_T 相当于 gcc
在 Visual Studio 上,我可以通过声明 _USE_32BIT_TIME_T
强制使用 32 位 time_t
。 gcc 有类似的等效项吗?或者它总是 32 位还是总是 64 位?
On Visual studio I can force use of 32-bit time_t
by declaring _USE_32BIT_TIME_T
. Is there a similar equivalent for gcc? or is it always 32-bit or is it always 64-bit?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
time_t
类型不是由 gcc 定义的,而是由系统库定义的。在 Linux 上,这是 glibc,它在time.h
标头中定义time_t
:而该标头又在
bits/types.h
中定义:(
__STD_TYPE
定义并不有趣),__TIME_T_TYPE
在bits/typesizes.h
中定义:它又在
bits/ 中定义types.h
:在32位系统上是32位,在64位系统上是64位。所有这些定义都是无条件的,因此 glibc 上没有等效的
_USE_32BIT_TIME_T
。The
time_t
type is not defined by gcc but rather by system library. On Linux, this is glibc, and it definestime_t
intime.h
header:which is in turn defined in
bits/types.h
:(
__STD_TYPE
definition is not interesting),__TIME_T_TYPE
is defined inbits/typesizes.h
:which is in turn defined in
bits/types.h
:which is 32 bits on 32 bits system, 64 bits on 64 bits system. All these definitions are unconditional, so, no
_USE_32BIT_TIME_T
equivalent on glibc.