读书人

怎样把字符串形式的时间转化为系统标准

发布时间: 2012-03-20 14:01:11 作者: rapoo

怎样把字符串形式的时间转化为系统标准格式的时间
定义的char * creationDate = __DATE__ ", " __TIME__;
结果为 "Apr 22 2007,15:45:05 "
为一个字符串形式的时间
我想请问,怎么把字符串形式的时间转化为系统标准格式的时间.
我 转化为tm格式 然后mktime成 time_t类型
结果不太对,高手请点。可否给个例子

[解决办法]
你要是按tm的结构去填写,mktime的值就该是正确的

[解决办法]
注意年月日,时分秒一定要对应好
[解决办法]

#include <stdio.h>
#include <string.h>
#include <time.h>

void GetCurrentTime()
{
time_t timep;
struct tm *p;
timep=time(NULL);
p=localtime(&timep);
char s1[10], s2[10];
sprintf(s1, "%d-%d-%d ", (1900+p-> tm_year), (1+p-> tm_mon), p-> tm_mday);
sprintf(s2, "%d:%d:%d\n ", p-> tm_hour, p-> tm_min, p-> tm_sec);
strcat(s1,s2);
printf( "%s ",s1);
}

int main()
{

GetCurrentTime();
return 0;
}

读书人网 >C语言

热点推荐