将整数除以16而不使用除法或强制转换

old*_*ool -2 optimization division fractions

好的......让我改一下这个问题......

如何在不使用除法或转换加倍的情况下获得整数的x 16th ...

The*_*aul 5

int res = (ref * frac) >> 4
Run Code Online (Sandbox Code Playgroud)

(但是担心有点溢出.参考和压裂有多大?如果它可能溢出,先抛出更长的整数类型)