Cocos2d-x 获取系统当前时间

在项目中我们常常需要获取系统当前时间,用作随机数的种子或者将当前时间显示到画面中。

在标准C/C++中,我们通常使用tm结构实现对系统当前时间的获取。头文件time.h中定义如下:在标准C/C++中,我们可通过tm结构来获得日期和时间,tm结构在time.h中的定义如下:

#ifndef _TM_DEFINED

struct tm {

int tm_sec; /* 秒 – 取值区间为[0,59] */

int tm_min; /* 分 - 取值区间为[0,59] */

int tm_hour; /* 时 - 取值区间为[0,23] */

int tm_mday; /* 一个月中的日期 - 取值区间为[1,31] */

int tm_mon; /* 月份(从一月开始,0代表一月) - 取值区间为[0,11] */

int tm_year; /* 年份,其值等于实际年份减去1900 */

int tm_wday; /* 星期 – 取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推 */

int tm_yday; /* 从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推 */

int tm_isdst; /* 夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。*/

具体实现如下所示:

#include 
#include 
int main(void)
{
struct tm *ptr;
time_t lt;
lt =time(NULL);
ptr=localtime(<);
printf("second:%d\n",ptr->tm_sec);
printf("minute:%d\n",ptr->tm_min);
printf("hour:%d\n",ptr->tm_hour);
printf("mday:%d\n",ptr->tm_mday);
printf("month:%d\n",ptr->tm_mon+1);
printf("year:%d\n",ptr->tm_year+1900);
    while (1)
{
};
return 0;
}

程序运行结果如下所示:

 Cocos2d-x 获取系统当前时间_第1张图片

cocos2d-x中我们也可以使用类似的方法,达到获取系统当前时间的目的。

#include "cocos2d.h"
USING_NS_CC;
using namespace std;
calss TimeCurrent 
{
string gettimecurrent();
};
string gettimecurrent()
{
time_t t;
time(&t);
char tmp[64];
strftime(tmp,sizeof(tmp),"%Y-%m-%d %X",localtime((&t)));
string timeStr=tmp;
return timeStr;
}

本人QQ:646167650

新浪微博: Andy_李政刚



 

 

 

 

你可能感兴趣的:(cocos2d-x,移动开发,游戏,C++)