18.4.1. Простой оператор case
18.4.1. Простой оператор case
Следующий сценарий отображает приглашение для ввода чисел от 1 до 5. Число передается оператору case, переменной ans присваивается значение ans оператора case, и значение ANS сравнивается с каждым шаблоном.
Если соответствие установлено, команды из шаблонной части выполняются до тех пор, пока не появятся символы ;;. Тогда на экран выводится команда, которая информирует пользователя о сделанном выборе. Затем выполнение оператора case завершается, поскольку совпадение с шаблоном установлено.
Далее выполняются операции, находящиеся после оператора case.
Если соответствие не найдено, с помощью шаблона * выполняется прием всей информации. Затем отображается сообщение об ошибке.
$ pg caseselect
#!/bin/sh
# caseselect
echo -n "enter a number from 1 to 5 :"
read ANS
case $ANS in
1) echo "you select 1"
;;
2) echo "you select 2"
;;
3) echo "you select 3"
;;
4) echo "you select 4"
;;
5) echo "you select 5"
;;
*) echo "`basename $0`: This is not between 1 and 5" >&2
;;
exit 1
esac
Если этот сценарий выполняется с различными вводимыми данными, получим:
$ caseselect
enter a number from 1 to 5 : 4 you select 4
С помощью шаблона * выполним прием информации, с которой не установлено соответствия:
$ caseselect
enter a number from 1 to 5 :pen
caseselect: This ls not between 1 and 5
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
5.8.3 Оператор case
5.8.3 Оператор case Формат оператора case таков: case word in [[(] pattern [| pattern]…) list;;]… esacКоманда case вначале производит раскрытие слова word, и пытается сопоставить результат с каждым из образцов pattern поочередно. После нахождения первого совпадения дальнейшие проверки не производятся,
case … in … esac
case … in … esac Оператор case очень похож на if. Он отлично подходит для тех случаев, когда нужно проверить несколько условий, и вы не хотите для этого использовать несколько вложенных операторов if. Поясним на примере:#!/bin/bashx=5 # инициализируем х значением 5# проверяем значение х:case
Оператор Case Else
Оператор Case Else Если значение свойства Туре не будет удовлетворять ни одному из критериев в операторах Case, то управление перейдет к оператору Case Else, который всегда находится в самом конце структуры Select Case. В предыдущем примере результатом этого будет сообщение об ошибке
Правило 52: Если вы написали оператор new с размещением, напишите и соответствующий оператор delete
Правило 52: Если вы написали оператор new с размещением, напишите и соответствующий оператор delete Операторы new и delete с размещением встречаются в C++ не слишком часто, поэтому в том, что вы с ними не знакомы, нет ничего страшного. Вспомните (правила 16 и 17), что когда вы пишете такое
1.5.3. Предложение case в Ruby
1.5.3. Предложение case в Ruby Во всех современных языках есть та или иная форма многопутевого ветвления. В C/C++ и Java это предложение switch, а в Pascal — предложение case. Служат они одной и той же цели и функционируют примерно одинаково.Предложение case в Ruby похоже, но при ближайшем
Оператор case
Оператор case Конструкция case используется для ветвления, когда может существовать более двух возможных результатов условного выражения. Она также имеет синтаксис двух видов: case выражение ofзначение1: блок_кода1;…значениеN: блок_кодаN; end;илиcase выражение ofзначение1:
5.2.10.2. Инструкция CASE
5.2.10.2. Инструкция CASE CASE case_value WHEN when_valueTHEN statement_list[WHEN when_value THEN statement_list] …[ELSE statement_list]END CASEИли: CASE WHEN search_condition THEN statement_list[WHEN search_condition THEN statement_list] …[ELSE statement_list]END CASEИнструкция CASE для сохраненных подпрограмм осуществляет сложную условную конструкцию. Если search_condition равно true,
1. Оператор Select – базовый оператор языка структурированных запросов
1. Оператор Select – базовый оператор языка структурированных запросов Центральное место в языке структурированных запросов SQL занимает оператор Select, с помощью которого реализуется самая востребованная операция при работе с базами данных – запросы.Оператор Select
15.8.2. Оператор размещения new() и оператор delete()
15.8.2. Оператор размещения new() и оператор delete() Оператор-член new() может быть перегружен при условии, что все объявления имеют разные списки параметров. Первый параметр должен иметь тип size_t:class Screen {public:void *operator new( size_t );void *operator new( size_t, Screen * );// ...};Остальные параметры
Пример 10-26. Оператор case допускает использовать подстановку команд вместо анализируемой переменной
Пример 10-26. Оператор case допускает использовать подстановку команд вместо анализируемой переменной #!/bin/bash# Подстановка команд в "case".case $( arch ) in # команда "arch" возвращает строку, описывающую аппаратную апхитектуру.i386 ) echo "Машина на базе процессора 80386";;i486 ) echo "Машина на базе
18.4. Оператор case
18.4. Оператор case Оператор case является многовариантным оператором. С его помощью можно искать значения, используя заданный шаблон. Если совпадение с шаблоном установлено, можно выполнять команды, основываясь исключительно на этом соответствии. Ниже приводится формат
18.4.4. Оператор case и передача командных параметров
18.4.4. Оператор case и передача командных параметров Можно также использовать оператор case при передаче параметров в сценарии.В следующем сценарии при осуществлении проверки используется специальный параметр $#, который представляет число передаваемых аргументов. Если это