PDA

Просмотр полной версии : [Вопрос] Как оборвать цикл



pustomerzha
29.05.2017, 02:21
Как оборвать выполняемый цикл, при этом не оборвав выполнение дальнейшего кода (после цикла)?

SooBad
29.05.2017, 02:28
Можно осуществить преднамеренный выход, при помощи оператора goto, если вы знаете, как его использовать по назнечению
Хотелось бы увидеть практический пример того кода, о котором идёт речь.

pustomerzha
29.05.2017, 02:32
Можно осуществить преднамеренный выход, при помощи оператора goto, если вы знаете, как его использовать по назнечению
Хотелось бы увидеть практический пример того кода, о котором идёт речь.


for (new free_slot; free_slot < 15; free_slot ++)
{
if (PlayerInfo[playerid][pInventory_Slot][free_slot] == 19300) // обрыв цыкла
// если pInventory_Slot не равен 19300, тогда продолжаем выполянть цикл
}

SendClientMessage(playerid, -1, !"Test");

SooBad
29.05.2017, 02:36
Можно прервать действующую работу цикла, при помощи оператора break.

Long-
30.05.2017, 16:55
Можно сделать как сказали выше, или же по другому.


for (new free_slot; free_slot < 15; free_slot ++)
{
if (PlayerInfo[playerid][pInventory_Slot][free_slot] == 19300) break;
}
SendClientMessage(playerid, -1, !"Test");


for(new free_slot; free_slot < 15; free_slot++)
{
if (PlayerInfo[playerid][pInventory_Slot][free_slot] != 19300) continue;
SendClientMessage(playerid, -1, !"Test");
}