cocos2d-x获取当前时间
发布时间:2020-12-14 16:48:56 所属栏目:百科 来源:网络整理
导读:之前使用过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::gettimeofdayCo
之前使用过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,或者作为自己的定时器使用~这些都没有问题 后来有项目需要获取年月日等时间 struct tm *tm;
time_t timep;
if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32) {
//win平台下这样处理
time(&timep);
}else {
//其它平台这样处理
struct timeval nowTimeval;
gettimeofday(&nowTimeval,NULL);
timep = nowTimeval.tv_sec;
}
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;
CCLOG("%d-%d-%d %d-%d-%d",year,month,day,hour,min,second);//输出时间
// 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;
// }
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |