首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请问:能给小弟我解释这段程序吗?多谢

2012-02-23 
请教:各位大哥能给我解释这段程序吗?谢谢!请教:#ifdef__BORLANDC__#definefloorf(float)floor#definesqrtf

请教:各位大哥能给我解释这段程序吗?谢谢!
请教:
#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...

热点排行