Vic*_*ciu 3 php precision bit-manipulation
我有以下问题:
第一:我试图对一个大数进行 32 位按位左移,并且由于某种原因该数字总是按原样返回。例如:
echo(516103988<<32); // echoes 516103988
Run Code Online (Sandbox Code Playgroud)
因为将位向左移动一位相当于乘以 2,所以我尝试将数字乘以 2^32,并且它有效,它返回 2216649749795176448。
第二:我必须将 9379 添加到上面的数字中:
printf('%0.0f', 2216649749795176448 + 9379); // prints 2216649749795185920
Run Code Online (Sandbox Code Playgroud)
应打印:2216649749795185827