毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> linux >> 正文

errno22-EINVAL 时区或某个数据是不正确的,无法正确设置时间

更新时间:2013-7-6:  来源:毕业论文

errno22-EINVAL 时区或某个数据是不正确的,无法正确设置时间

执行结果显示errno22(EINVAL 时区或某个数据是不正确的,无法正确设置时间)
我不知道哪里出问题帮我解决一下呗!!

 

unsigned char set_time(unsigned char *settime)
{

struct timeval new_tv;
struct timezone new_tz;

time_t timep,timeq;
struct tm *p;

#if 0
int ret;
ret = gettimeofday(&new_tv,&new_tz);
if(ret == -1)
{
qDebug("Gettimeofday err .ret = %d",ret);
return ;
}
ret = time(&timep);
if(ret == (time_t) -1 )
{
qDebug("This err .ret = %d",ret);
return ;
}
#endif

time(&timep);
p = localtime(&timep);
p->tm_year = settime[0];
p->tm_mon = settime[1];
p->tm_mday = settime[2];
p->tm_hour = settime[3];
p->tm_min = settime[4];
p->tm_sec = settime[5];

timeq = mktime(p);
new_tv.tv_sec = (long)timeq;
new_tv.tv_usec = 0;

if((settimeofday(&new_tv,NULL)) < 0)
{
fprintf(stderr,"settimeofday err:\n",strerror(errno));
printf("%d\n",errno);
return -1;
}
system("hwclock -w");
return 0;
}

int main()
{
unsigned char timebuf[] = {13,05,10,17,25,55};
set_time(timebuf);

return 0;
}
#include <stdio.h> #include <stdlib.h> #include<unistd.h> #include <errno.h> #include <time.h> #include<sys/time.h> #include <string.h>     int set_time(unsigned char *settime) {         struct timeval new_tv;          int ret;         time_t timep,timeq;         struct tm *p;         time(&timep);         p = localtime(&timep);           p->tm_year = settime[0]+2000-1900;         p->tm_mon = settime[1]-1;         p->tm_mday = settime[2];         p->tm_hour = settime[3];         p->tm_min = settime[4];         p->tm_sec = settime[5];                   printf("%d %d %d %d %d %d \n",p->tm_year,p->tm_mon,p->tm_mday,p->tm_hour,p->tm_min,p->tm_sec);        timeq = mktime(p);      printf("timeq %ld\n",timeq);      new_tv.tv_sec = (long)timeq;      new_tv.tv_usec = 0;      ret = settimeofday(&new_tv,NULL);      if(ret == -1)      {              printf("settimeofday error.%s\n",strerror(errno));              return ret;      }         else               system("hwclock -w");         return 0; }   int main() {         unsigned char timebuf[] = {13,07,05,17,25,55};         set_time(timebuf);                   return 0; }

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。