SA-MP Forums Archive
Return dentro de bucle, lo interrumpe (break)? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Return dentro de bucle, lo interrumpe (break)? (/showthread.php?tid=536334)



Return dentro de bucle, lo interrumpe (break)? - YazukiAkira - 09.09.2014

Hola tengo una duda, si dentro de un bucle for, while, foreach si hago un return este deja de hacer el bucle?

EJ:
pawn Код:
for (new var = 0; var < 5; var++)
{
    if (var == 3) return SendClientMessage(playerid, -1, "La variable var es igual a 3");
    // Al hacer return el bucle se corta sin la necesidad de utilizar break?
}



Respuesta: Return dentro de bucle, lo interrumpe (break)? - Alexander11 - 09.09.2014

Segъn lo que yo se, si retorna falso se corta, sin necesidad de break, creo que es lo mismo que cuando haces un stock para que verifique que usuarios tienen X variable en 1 o superior.


Respuesta: Return dentro de bucle, lo interrumpe (break)? - Stront - 09.09.2014

Sн, se corta el bucle y la funcion entera a donde pertenezca, en cambio break solo termina el bucle, procede con la funcion. Ejemplos:

new Objeto[MAX_PLAYERS][9];

TieneObjeto(playerid, objeto) // retorna 1 si lo tiene, 0 si no.
{
for(new i; i < 9; i++)
{
if(Objeto[playerid][i] == objeto) return 1;
}
return 0;
}

Con break:

new hueco;

UsarObjeto(playerid, objeto) // procede con una funcion.
{
for(new i; i < 9; i++)
{
if(Objeto[playerid][i] == objeto)
{
hueco == i;
break;
}
}
HacerFuncion(playerid, hueco);
return 1;
}