.net(c#)取页数,和两数相除尾数丢失的处理办法

2010-1-24 18:11:58

C#中两数相除会只取到整数部份,据我猜测,可能是C#做内存分配时,只分配成了int型之类的整型,所以我们做两数相除又想取小数部份的话一定要加强制转换

例:

错误的例子:double m=10/6;  这里的m会得到结果1

正确的例子:double m=(double)10/6;这里我们才得到了1.6666666这一类的小数。
但是注意 double m=(double)(10/6);是错误的,因为(10/6)会分配成一个整型内存,最后得到一个1再转成double的内存。
 

现在讲讲取页数的方法,一般的做法是10%6==0就在结果加1,实际上,ms给我们提供了一个Math.Ceiling的方法,这个方法的作用是取不小于当前数的最小整数。写法一定要注意前面说的取小数,

例:Response.Write(Math.Ceiling((double)10/6))这样将会输出2

点击这里获取该日志的TrackBack引用地址
上一篇: asp中request三大来源-cookie的注入下一篇: execCommand的完全参考
发布:lovepoco | 分类:.net(C#)的入门 | 评论:1 | 引用:0 | 浏览:

评论:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新评论及回复

相关文章