Условный оператор

Пустой оператор

Блоки и составные операторы

Деление операторов языка С на группы

 

По характеру действий различают два типа операторов: операторы преобразования данных и операторы управления работой программы. Типичные операторы преобразования данных – операторы присваивания и произвольные выражения, завершаемые символом "точка с запятой", вызовы функций. Операторы управления называют управляющими конструкциями или структурами. К ним относятся:

- составные операторы и блоки;

- пустой оператор;

- условный оператор;

- оператор безусловного перехода;

- операторы цикла;

- оператор переключатель.

Рассмотрим их.

Любая последовательность операторов, заключенная в фигурные скобки, является составным оператором (блоком). Составной оператор не должен оканчиваться точкой с запятой, поскольку ограничителем блока служат сама закрывающая скобка. Внутри блока каждый оператор должен оканчиваться точкой с запятой.

Составной оператор может использоваться везде, где синтаксис языка допускает обычный оператор. Отличие блока от составного оператора- наличие определений в теле блока. Наиболее часто блок употребляется в качестве тела функции.

Пустой оператор (null statement) представляется символом <точка с запятой>, перед которым нет выражения. Пустой оператор используют там, где синтаксис языка требует присутствия в данном месте программы оператора, однако по логике программы оператор должен отсутствовать.

Необходимость в использовании пустого оператора часто возникает при программировании циклов, когда действия, которые могут быть выполнены в теле цикла, целиком помещаются в заголовок цикла.

Стиль программирования

Рекомендуется точку с запятой, относящуюся к пустому оператору, помещать на отдельной строке.

Пример оператора цикла, вслед за которым помещен пустой оператор, приведен на ниже:

int length(char *stг)

{

int index = 0;

while ( str[ index++])

;

return --index;

}

 

Условный оператор имеет сокращенную форму:

if (выражение _условие) оператор;

где в качестве выражения_условия могут использоваться:

арифметическое выражение, отношение и логическое выражение. Оператор, включенный в условный, выполняется только в случае истинности (т.е, при ненулевом значении) выражения_условия.

Пример: if (x < 0 && x > -10) x=-x;

Кроме сокращенной формы, имеется еще и полная форма условного оператора:

if (выражение_условие) оператор_1;

else оператор_2;

Здесь в случае истинности выражения-условия выполняется только оператор_1, при нулевом значении выражения-условия выполняется только оператор_2. При вложенных конструкциях синтаксис С предписывает, что ELSE всегда относится к ближайшему IF.