我是java的初学者。有没有办法知道变量function msubirimagendropzone(){
$storeFolder = '/imagenes/vinos/'; //2
$nombreimagen = $_POST["nombrevino"];
if (!empty($_FILES)) {
$tempFile = $_FILES['file']['tmp_name']; //3
$tipo_imagen=$_FILES['file']['type'];
$targetPath = dirname( __FILE__ ) . $storeFolder; //4
imagepng($tempFile, $nombreimagen);
$targetFile = $targetPath. $nombreimagen; //5
move_uploaded_file($tempFile,$targetFile. ".png"); //6
smart_resize_image($targetFile.".png",null,200,200,false,$targetFile . "_little.png",false,false,100);
smart_resize_image($targetFile.".png",null,500,500,false,$targetFile . "_medium.png",false,false,100);
smart_resize_image($targetFile.".png",null,1000,1000,false,$targetFile . "_big.png",false,false,100);
}
}
是否永远不会达到n
?方法(boats-3)
中包含placeShip
循环,因此while
可能会在for
到达n
之前卡住。
boats-3
答案 0 :(得分:2)
这是一个错误的问题。你应该问问自己,我如何确保placeShip中的while循环永远不会卡住。例如:
while (true)
{
if (no more boats left to place) { break; }
else { place another boat; }
}
如果您编写设计良好的代码,您将永远不需要问自己这样的事情。
答案 1 :(得分:1)
变量n
永远不会达到循环内的boats - 3
值,因为你的for循环显示n < boats - 3
答案 2 :(得分:1)
我想你想知道该程序是否卡在placeship()
函数之一中。您可以在每个placeship()
函数之前和之后放置两个打印语句,以检查程序是否跳出函数。代码将是这样的:
if (opcao == 0)
{
System.out.println("n is " + n);
System.out.println("Before placeShip1");
placeShip1(grelha);
System.out.println("After placeShip1");
}
对其他两个placeShip()
做同样的事情。然后你应该能够看到程序被卡住的地方。