【发布时间】:2011-07-04 09:26:49
【问题描述】:
这是我将字符串时间转换为日期时间格式并将时间转换为秒的代码,但它显示了一些奇怪的值。请帮帮我
代码:
struct tm tm;
time_t t;
char s[25]="Sat Feb 19 12:53:39 2011";
if (strptime(s, "%A %b %d %H:%M:%S %Y", &tm) != NULL)
printf("year: %d; month: %d; day: %d;\n", tm.tm_year, tm.tm_mon, tm.tm_mday);
printf("hour: %d; minute: %d; second: %d\n", tm.tm_hour, tm.tm_min, tm.tm_sec);
printf("week day: %d; year day: %d\n", tm.tm_wday, tm.tm_yday);
tm.tm_isdst = -1;
t = mktime(&tm);
printf("seconds since the Epoch: %ld\n", (long) t);
输出是
年:111;月:1;第 19 天;
小时:12;分钟:53;第二:40
工作日:6;年日:49
自纪元以来的秒数:1298102020
【问题讨论】:
-
什么奇怪的值?我看到的唯一奇怪的事情是线条是如何分解的。