当前位置: 技术问答>linux和unix
关于time的问题,朋友们帮帮忙啊...
来源: 互联网 发布时间:2016-01-19
本文导语: 小弟在嵌入式目标板上使用time函数发现时间错误啊,和GMT时间相差了8个小时. time_t now; (void) time(&now); printf("%sn",ctime(&now)); ================================= 假如现在本地时间是 Apr 12 12:00:00 2007, 则打印结果却是 ...
小弟在嵌入式目标板上使用time函数发现时间错误啊,和GMT时间相差了8个小时.
time_t now;
(void) time(&now);
printf("%sn",ctime(&now));
=================================
假如现在本地时间是 Apr 12 12:00:00 2007,
则打印结果却是 Apr 12 04:00:00 2007
=================================
请问time函数是如何获得系统日期的?这个问题可能原因有哪些阿?谢谢了~~~
time_t now;
(void) time(&now);
printf("%sn",ctime(&now));
=================================
假如现在本地时间是 Apr 12 12:00:00 2007,
则打印结果却是 Apr 12 04:00:00 2007
=================================
请问time函数是如何获得系统日期的?这个问题可能原因有哪些阿?谢谢了~~~
|
寒,不懂,有没有分拿?
|
time拿到是本地系统时间,系统初始化时候有默认值,若取GMT标准时间,需要NTP Client同步才行啊。
|
用localtime_r 这个函数将你用time函数取得的时间转换民本地时间。就可以支持任何区域的时限自动翻译了。
|
时区问题!
给你个参考:
int main(){
char *wday[]={"Sun","Mon","Tue","Wed", "Thu","Fri","Sat"};
time_t timep;
struct tm *p;
time(&timep);
p=localtime(&timep);
printf ("%d%d%d ", (1900+p->tm_year),(l+p->tm_mon), p->tm_mday);
printf("%s %d:%d:%dn", wday[p->tm_wday],p->tm_hour, p->tm_min, p->tm_sec);
return 0;
}
给你个参考:
int main(){
char *wday[]={"Sun","Mon","Tue","Wed", "Thu","Fri","Sat"};
time_t timep;
struct tm *p;
time(&timep);
p=localtime(&timep);
printf ("%d%d%d ", (1900+p->tm_year),(l+p->tm_mon), p->tm_mday);
printf("%s %d:%d:%dn", wday[p->tm_wday],p->tm_hour, p->tm_min, p->tm_sec);
return 0;
}