在我的应用程序中,我需要将时间提交到游戏中心,并且我需要以经过的时间显示 - 以百分之一秒的格式。
00:00:00.00
这是我想在排行榜中显示的格式。
在我的应用程序中,我得到以下格式的时间
SS.SS
ss = 秒 SS = 百分之一秒
在将其发送到游戏中心之前,我将值转换为双倍
double newScoreDouble = [newScore doubleValue];
但是当我将双倍分数发送到游戏中心时,它要求我将其转换为 int64_t 格式。但是当我将其转换为该格式时,它会丢失部分双精度值。
double intPart = 0;
double fractPart = modf(newScoreDouble, &intPart);
int isecs = (int)intPart;
int min = isecs / 60;
int sec = isecs % 60;
int hund = (int) (fractPart * 100);
int64_t time_to_send_through_game_center = min*6000 + (sec*100 + hund);
这是我将 double 转换为 int64_t 的方式
任何人都可以说如何将整个双精度值发送到游戏中心并以经过时间显示 - 到百分之一秒的格式。
谢谢