Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для pustomerzha
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.11.2016
    Сообщений
    24
    Репутация:
    0 ±

    Как оборвать цикл

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

  2. #2
    Аватар для SooBad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.04.2017
    Адрес
    Краснодар
    Сообщений
    83
    Репутация:
    20 ±
    Можно осуществить преднамеренный выход, при помощи оператора goto, если вы знаете, как его использовать по назнечению
    Хотелось бы увидеть практический пример того кода, о котором идёт речь.

  3. #3
    Аватар для pustomerzha
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.11.2016
    Сообщений
    24
    Репутация:
    0 ±
    Цитата Сообщение от SooBad Посмотреть сообщение
    Можно осуществить преднамеренный выход, при помощи оператора goto, если вы знаете, как его использовать по назнечению
    Хотелось бы увидеть практический пример того кода, о котором идёт речь.
    PHP код:
    for (new free_slotfree_slot 15free_slot ++)
    {
        if (
    PlayerInfo[playerid][pInventory_Slot][free_slot] == 19300// обрыв цыкла
        // если pInventory_Slot не равен 19300, тогда продолжаем выполянть цикл
    }

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

  4. #4
    Аватар для SooBad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.04.2017
    Адрес
    Краснодар
    Сообщений
    83
    Репутация:
    20 ±
    Можно прервать действующую работу цикла, при помощи оператора break.

  5. Пользователь сказал cпасибо:
    pustomerzha (29.05.2017)
  6. #5
    Аватар для Long-
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.11.2016
    Сообщений
    131
    Репутация:
    23 ±
    Можно сделать как сказали выше, или же по другому.

    PHP код:
    for (new free_slotfree_slot 15free_slot ++)
    {
        if (
    PlayerInfo[playerid][pInventory_Slot][free_slot] == 19300) break;
    }
    SendClientMessage(playerid, -1, !"Test"); 
    PHP код:
    for(new free_slotfree_slot 15free_slot++)
    {
       if (
    PlayerInfo[playerid][pInventory_Slot][free_slot] != 19300) continue;
       
    SendClientMessage(playerid, -1, !"Test");


 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •