Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java php乘法奇怪整数溢出行为_Java_Php_Integer Overflow - Fatal编程技术网

Java php乘法奇怪整数溢出行为

Java php乘法奇怪整数溢出行为,java,php,integer-overflow,Java,Php,Integer Overflow,在scala(java)中 但是在php中(5.5/64位linux系统) 这可能是最好的解释 还要记住,PHP还没有完全移植到64位。请参阅 x86_64版本 PHP for Windows的x64版本应被视为实验性的,不提供64位整数或大文件支持。请参阅本文,了解正在进行的改进这些构建的工作 函数倍数31($num){ return(int)(很抱歉,$num,Java和Scala可以互换吗?@chiefwopencils Scala和Java在这里有相同的行为。答案:Java程序员需要阅读

在scala(java)中

但是在php中(5.5/64位linux系统)


这可能是最好的解释

还要记住,PHP还没有完全移植到64位。请参阅

x86_64版本

PHP for Windows的x64版本应被视为实验性的,不提供64位整数或大文件支持。请参阅本文,了解正在进行的改进这些构建的工作

函数倍数31($num){

return(int)(很抱歉,$num,Java和Scala可以互换吗?@chiefwopencils Scala和Java在这里有相同的行为。答案:Java程序员需要阅读php内容,php程序员需要阅读Java文档…:)
echo((8218553819005469347*31)>php_int_MAX:(int)(8218553819005469347*31);
也许?(未经测试)因此,针对JVM的每种语言都会以相同的方式运行。您的帖子中没有包含这些语言或标记。重点是,它的编写方式可能有点混乱。
scala> 8218553819005469347L * 31
res75: Long = -3479248642764172867
<?php
echo (int)(8218553819005469347 * 31);
function multiply31($num)  {
    return (int)(($num << 5) - $num);
}