请教:各位大哥能给我解释这段程序吗?谢谢!
请教:
#ifdef __BORLANDC__
#define floorf (float)floor
#define sqrtf (float)sqrt
#endif
time=GetTime();
bool RenderFunc()
{
int hrs, mins, secs; //hrs 速度 mins 毫秒 secs 秒
float tmp; //不知道是什么
// Calculate display time
hrs=(int)floorf(time); //得到时间值为 浮点数
tmp=(time-hrs)*60.0f; //这里不知道是什么
mins=(int)floorf(tmp); //这里不知道是什么
secs=(int)floorf((tmp-mins)*60.0f); //这里不知道是什么
}
请教:
问题1:
floor 这个函数的功能是什么啊?
举个例子,好吗?
问题2:
hrs=(int)floorf(time);
这样做有什么用啊?
hrs 和 time 的值相等吗?
问题3:
tmp=(time-hrs)*60.0f;
这里是什么意思?
time 的值一定大于 hrs 吗?
问题4:
mins=(int)floorf(tmp); //这里不知道是什么
这句话是什么意思?
问题5:
secs=(int)floorf((tmp-mins)*60.0f); //这里不知道是什么
这句话是什么意思?
谢谢!
[解决办法]
floor 向下舍入,比如:double a=123.54; 则 floor(a)的值为 123
[解决办法]
tmp=(time-hrs)*60.0f;
就是数学运算 60.0f就是六十
tmp的值是 time减去hrs后再乘以60.0
具体大小未定
问题2和4是一个问题
5也是同一问题
只要记住凡是出现floorf你就给他换成(float)float,然后重写下程序看看
[解决办法]
俺也学习一下。没用过这个函数。studying...