mac os下编译linux项目程序时发现的clang兼容性问题

9527 9527 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(int argc, const char *argv[])
{
char szDateNow[20];
struct tm curtime;
time_t t = time( NULL ); //get systime
localtime_r( &t, &curtime); //转换时间格式

strftime( szDateNow, sizeof(szDateNow), "%Y-%m", &curtime);
printf("%%Y-%%m is %s.\n", szDateNow);
strftime( szDateNow, sizeof(szDateNow), "%04Y-%02m", &curtime);
printf("%%04Y-%%02m is %s.\n", szDateNow);
exit(0);
}

如上所示代码,在linux下使用gcc编译,输出结果为:
%Y-%m is 2014-01.
%04Y-%02m is 2014-01.
在mac os 10.9.1下使用clang编译,输出结果为:
%Y-%m is 2014-01.
%04Y-%02m is 4Y-2m.

请问大家一个问题,如果我要输出02Y-02m即两位年两位月改怎么做,输出四位自己截取这个不要提了
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
9527
Linux/Unix社区 23,224 成员 74,535 内容