Шрифт:
Общий формат goto идентификатор;
Выполнение оператора goto вызывает передачу управления непосредственно оператору с меткой идентификатор. Оператор с меткой должен находиться в той же функции или методе, где и goto. Оператор if Формат 1 if {выражение) программныйОператор
Если результат вычисления выражения не равен нулю, то выполняется программ-ныйОператор', иначе он пропускается. Формат 2 if (выражение) программныйОператор else программныйОператор2
Если значение выражения не равно нулю, то выполняется программныйОпера- тор1; иначе выполняется программныйОператор2. Если программный0ператор2 является еще одним оператором if, образуется цепочка if-else if, например, if {выражение1) программныйОператор else if (выражение2) программныйОператор2 else программныйОператорп
Предложение else всегда связано с последним оператором if, который не со-держит else. При необходимости можно использовать фигурные скобки, чтобы изменить эту связь. Оператор null
Общий формат ;
Выполнение null-оператора (пустого оператора) не оказывает никакого влияния и используется в основном, чтобы выполнить требование программного оператора в цикле for, do или while. В следующем операторе выполняется копирование символьной строки, указанной с помощью from, в строку, указанную с помощью to. while (*to++ = *from++ ) ;
В этом операторе используется null-оператор, чтобы выполнить требование того, что после выражения цикла while должен присутствовать программный оператор. Оператор return Формат 1 return;
Выполнение оператора return вызывает немедленный возврат выполнения программы в вызывающую функцию или метод. Этот формат можно использовать только для возврата из функции или метода, которые не возвращают никакого значения.
Если выполнение доходит до конца функции или метода, не встретив оператор return, то происходит возврат, как при выполнении оператора return в этом формате, поэтому в таком случае не возвращается никакого значения. Формат 2 return выражение;
Вызывающей функции или методу возвращается значение выражения. Если тип выражения не согласуется с типом возвращаемого значения, указанным в объявлении функции или метода, то его значение автоматически преобразуется перед возвратом в объявленный тип. Оператор switch
Общий формат switch (выражение) { case константа1: программный оператор программный оператор ... break; case кон стан та_2: программный оператор программный оператор ... break; case константап; программный оператор программный оператор ... break; default: программный оператор программный оператор ... break; } Выполняется вычисление и сравнение выражения со значениями константных выражений константа_1, константа_2, константап. Если значение выражения совпадает с одним из этих case-значений, то выполняются последующие про-граммные операторы. Если ни одно из case-значений не совпадает со значением выражения, то выполняется (если он включен) вариант по умолчанию default. Если вариант default не включен, то не выполняются никакие операторы, включенные в switch.
Результат вычисления выражения должен быть целого типа, и никакие два варианта case не должны иметь одинаковое значение. Отсутствие оператора break в определенном case-варианте вызывает продолжение выполнения в следующем case-варианте. Оператор while
Общий формат while (выражение) программныйОператор
Если значение выражения не равно нулю, выполняется программныйОператор. Поскольку выражение вычисляется каждый раз перед тем, как выполняется прог-раммныйОператор, этот оператор может никогда не выполняться. Обработка исключений
Для обработки исключений во время выполнения нужно включить операторы, которые могут генерировать исключение, в блок @try, который имеет общий формат @try программныйОператор 1 @catch (исключение) программныйОператор 2 @catch (исключение) ... @finally программныйОператор n
Если исключение выдает программныйОператор 1, то проверяются (по поряд-ку) последующие блоки @catch на совпадение соответствующего исключения с выданным исключением. Если да, то будет выполнен соответствующий программ-ныйОператор. Независимо от факта выдачи и перехвата исключения будет вы-полнен блок @finally (если он задан). Препроцессор
Препроцессор анализирует исходный файл до того, как компилятор рассмотрит сам код. Препроцессор выполняет следующие действия.
Он заменяет триграммы (группы из трех последовательных символов) на их эквиваленты (см. выше раздел «Составные операторы»).
Он объединяет в одну с троку любые строки, которые заканчиваются обратным слешем (\).
Он разделяет программу на поток маркеров.
Он удаляет комментарии, заменяя их одним пробелом.
Он обрабатывает мрепроцессорные директивы (см. ниже раздел «Директивы препроцессора») и раскрывает макросы. Последовательности из триграмм