如何获取 __TIME__ 的 UTC 偏移量?
我们使用 __TIME__ 来将编译时间嵌入到二进制文件中。不幸的是,没有 UTC 偏移的时间是没有意义的。我没有看到一种明显的方法来获取编译器正在运行的时区。我想我可以从配置脚本中获取它。但还有更好的办法吗?
如果我从配置脚本中执行此操作,我将需要以某种方式将其放入 .h 或 .c 文件中,并在该文件不存在时执行一些智能操作。
We are using __TIME__
to embed the time of compilation in a binary. Unfortunately, a time without a UTC Offset is meaningless. I don't see an obvious way to get the timezone that the compiler is running in. I suppose I could grab this from the configure script. But is there a better way?
If I do it from a configure script, I'm going to need to put that into a .h or .c file somehow, and do something intelligent if the file is not there.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用编译器标志从外部传递它。大多数编译器提供
'-D'
标志来外部定义#define
宏。假设您将 UTC 信息放入环境变量中。将该环境变量作为-D
标志传递在
mysource.cpp
中,使用宏UTC
:you can use compiler Flags to pass that externally. Most compiler provide
'-D'
flag to define#define
macros externally. Let's suppose you put the UTC information in an environment variable. Pass that environment variable as-D
flagIn your
mysource.cpp
use the macroUTC
: