cocos2d-x 获取系统时间

时间:2023-02-08 15:33:07

转自:http://blog.csdn.net/jinjian2009/article/details/9449585

之前使用过cocos2d-x获取系统时间,毫秒级的

long getCurrentTime()   
{
struct timeval tv;
gettimeofday(
&tv,NULL);
return tv.tv_sec * 1000 + tv.tv_usec / 1000;
}

或者这样写

long getCurrentTime()   
{
struct cc_timeval tv;
CCTime::gettimeofdayCocos2d(
&tv, NULL);
return tv.tv_sec * 1000 + tv.tv_usec / 1000;
}

上面两种实现应该都是没有问题的~~~之前获取时间的主要作用是给随机函数做种子,或者计算FPS,或者作为自己的定时器使用~这些都没有问题

后来有项目需要获取年月日等时间

void GetTime(int level)
{
struct tm *tm;
time_t timep;
#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
time(
&timep);
#else
struct cc_timeval now;
CCTime::gettimeofdayCocos2d(
&now, NULL);
timep
= now.tv_sec;
#endif


tm
= localtime(&timep);
int year = tm->tm_year + 1900;
int month = tm->tm_mon + 1;
int day = tm->tm_mday;
int hour=tm->tm_hour;
int min=tm->tm_min;
int second=tm->tm_sec;
}