gpt4 book ai didi

c - 为什么arm-linux-gnueabihf-gcc和mipsel-openwrt-linux-uclibc-gcc编译 'gmtime, strftime'的结果不同

转载 作者:行者123 更新时间:2023-11-30 14:43:32 25 4
gpt4 key购买 nike

我使用strftime来格式化时间。 %Z 格式化时区。但结果是用arm-linux-gnueabihf-gcc编译的GMT,用mipsel-openwrt-linux-uclibc-编译的UTC海湾合作委员会

不知道为什么。

time_t t = time(NULL);
char stat_timestamp[24] = {0};
strftime(stat_timestamp, sizeof stat_timestamp, "%F %T %Z", gmtime(&t));
printf("gmtime: %s\n", stat_timestamp);

使用arm-linux-gnueabihf-gcc编译:

gmtime: 2018-12-21 XX:XX:XX GMT

使用mipsel-openwrt-linux-uclibc-gcc编译:

gmtime: 2018-12-21 XX:XX:XX UTC

最佳答案

Why the result of 'gmtime, strftime' is different

  • 实现定义的行为。

C 不要求它在各个平台上都相同。

%Z is replaced by the locale’s time zone name or abbreviation, or by no characters if no time zone is determinable. [tm_isdst] C11dr §7.26.3.5 3

In the "C" locale ... %Z implementation-defined. §7.26.3.5 7

请注意UTC类似于GMT 。另请参阅Is GMT same as UTC?

关于c - 为什么arm-linux-gnueabihf-gcc和mipsel-openwrt-linux-uclibc-gcc编译 'gmtime, strftime'的结果不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53879184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com