00001 #include <stdio.h>
00002 #include <stdlib.h>
00003 #include <time.h>
00004 #include <sys/time.h>
00005
00006
00007
00008
00009 char *get_effdate(int plusdays)
00010 {
00011 struct timeval tvalr;
00012 struct tm *t_ptr;
00013 time_t newtime;
00014 char *timestr;
00015
00016 if(gettimeofday(&tvalr, NULL) == -1) {
00017 return("200712121212");
00018 }
00019 t_ptr = localtime(&tvalr.tv_sec);
00020 t_ptr->tm_mday = t_ptr->tm_mday + plusdays;
00021 newtime = mktime(t_ptr);
00022 t_ptr = localtime(&newtime);
00023 timestr = (char *)malloc(32);
00024 sprintf(timestr, "%04d%02d%02d%02d%02d",
00025 t_ptr->tm_year+1900, t_ptr->tm_mon+1, t_ptr->tm_mday,
00026 t_ptr->tm_hour, t_ptr->tm_min);
00027 return(timestr);
00028 }
00029
00030
00031 char *get_datetime()
00032 {
00033 struct timeval tvalr;
00034 struct tm *t_ptr;
00035 static char datestr[32];
00036
00037 gettimeofday(&tvalr, NULL);
00038 t_ptr = localtime((const time_t *)&tvalr.tv_sec);
00039 sprintf(datestr, "%s", asctime(t_ptr));
00040 return(datestr);
00041 }
00042