Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram

return

возврат из подпрограммы или gosub

Аватара пользователя
Anton
Site Admin
Сообщения: 97
Зарегистрирован: Чт фев 08, 2024 7:03 pm

return

Сообщение Anton »

return
return — возврат из подпрограммы или gosub

Синтаксис
gosub foo

label foo

return

sub bar(baz)

return quertz
end sub

Описание
Оператор return служит двум различным (хотя и в некоторой степени связанным) целям. Вероятно, более важным использованием return является возврат управления из подпрограммы в то место в вашей программе, откуда была вызвана подпрограмма. Если подпрограмма объявлена для возврата значения, оператор return может сопровождаться строкой или числом, которые представляют собой возвращаемое значение подпрограммы.

Однако, даже если подпрограмма должна возвращать значение, оператор return не обязательно должен содержать значение; в этом случае подпрограмма вернет 0 или пустую строку (в зависимости от типа подпрограммы). Более того, не стесняйтесь размещать в своей подпрограмме несколько инструкций return; это отличный способ контролировать процесс выполнения.

Второе (но исторически первое) использование return - это возврат к позиции, на которой была остановлена предыдущая отправка. В этом случае return может не содержать значения.

Пример

Код: Выделить всё

do
  read a$
  if (a$="") then
    print
    end
  endif
  print mark$(a$)," ";
loop

data "The","quick","brown","fox","jumped"
data "over","the","lazy","dog",""

sub mark$(a$)
  if (instr(lower$(a$),"q")) return upper$(a$)
  return a$
end sub
В этом примере используется подпрограмма mark$, которая возвращает свой аргумент в верхнем регистре, если он содержит букву "q", или без изменений в противном случае. В тестовом тексте слово quick в конечном итоге будет помечено как QUICK.

Приведенный выше пример демонстрирует return внутри подпрограмм; пожалуйста, смотрите в gosub пример того, как использовать return в этом контексте
Связанные команды и функции:
sub, gosub