我正在使用该函数strptime()
从字符串转到struct tm
. 但是,当我检查字段时,有一些没有填写。所以我检查了手册页,但似乎我在做正确的事情,所以现在我不知道出了什么问题。
示例输入字符串:
Wed, 19 Oct 2005 10:59:00 GMT
strptime 函数:
if(strptime(date, "%a, %d %b %Y %T %Z", &time) != NULL)
据我了解, %a 代表星期几, %d 代表月份中的某天, %b 代表月份, %Y 代表年份, %T 代表 HH:MM:SS 和 % Z 代表格林威治标准时间。
的输出tm struct
year: 32767; month: 866041216; day: 0;
hour: 3; minute: 0; second: 37941328
产生输出的代码:
printf("year: %d; month: %d; day: %d;\n",
time.tm_year, time.tm_mon, time.tm_mday);
printf("hour: %d; minute: %d; second: %d\n",
time.tm_hour, time.tm_min, time.tm_sec);
printf("week day: %d; year day: %d\n", time.tm_wday, time.tm_yday);
任何朝着正确方向的推动都会非常有帮助。谢谢!