首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

关于time的有关问题,朋友们帮帮忙啊

2012-03-08 
关于time的问题,朋友们帮帮忙啊...小弟在嵌入式目标板上使用time函数发现时间错误啊,和GMT时间相差了8个小

关于time的问题,朋友们帮帮忙啊...
小弟在嵌入式目标板上使用time函数发现时间错误啊,和GMT时间相差了8个小时.
time_t   now;
(void)   time(&now);
printf( "%s\n ",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:%d\n ", wday[p-> tm_wday],p-> tm_hour, p-> tm_min, p-> tm_sec);
return 0;
}

热点排行