Return dentro de bucle, lo interrumpe (break)?
#1

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?
}
Reply
#2

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.
Reply
#3

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;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)