关于c ++:将time

您所在的位置:网站首页 time_t转换 关于c ++:将time

关于c ++:将time

2023-11-20 16:25| 来源: 网络整理| 查看: 265

我想将time()作为time_t返回的Unix时间戳转换为整数。 我一直在寻找解决方案20分钟,并决定在这里询问。

我找到的每个解决方案都没有用。 当尝试从time_t转换为int时,出现错误:

1long int t = static_cast time(NULL);

error C2061: syntax error : identifier 'time'

error C2146: syntax error : missing '(' before identifier 'time'

我对C ++非常陌生。 提前致谢。

相关讨论 在大多数现代平台上,time_t是64位数字,强制转换为int将丢失数据。 而且语法是static_cast(time(nullptr)); 错误消息会告诉您确切的问题。 FWIW,Clang给出了一个更具可读性的错误,而在解决该错误时,另一个简单错误。 绝对没有办法不解决这些问题。 ...并且不要忘记#include (或#include ,而使用std::time)。

time_t已经是一个整数,尽管它是故意选择存储系统的整个UNIX时间范围的整数,所以我建议不要使用此类型。

但是,如果您坚持认为,您的选择正确无误,但只是错误地使用了强制转换语法。

通常,将e静态转换为T看起来像这样:

1static_cast(e)  //


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3