×××运算中的取ceiling法,只用表达式实现:
当我们想将1<x<2的x全部进位到2(即取ceiling)时,而又只用运算表达式来算时可如下做。
我的使用背景:我想分配一块大小差不多为60K的空间(粗略估计,但不能小于60K),来用填充n个大小
为1448的数据包。问题是60K不是1448的整数倍,如果分配60K,则会用空间浪费,但又不想浪费。所以如
下做:
1.先算60K空间最多最多可装多少个1448包
MaxNumPackets = (60k+(1448-1))/1448;
2.再算精确的总空间:
MaxSize = MaxNumPackets * 1448;
3.再分配MaxSize大小的空间。
ps:这里的1448和60K可在需要的背景中替换成其它值