Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
О п е р а т о р п р и с в а и в а н и я
Для исключения путаницы в понятиях " операция" и " оператор", отметим, что оператор - это наименьшая исполняемая единица программы. Очень часто в литературе по Си вместо термина " оператор" используется его синоним " инструкция". Операция a = c становится оператором, если в конце поставить точку с запятой a = c;. В Си точка с запятой является заключающим символом оператора. Различают операторы присваивания, действие которых состоит в вычислении и сохранении результатов заданных выражений (например: a = sin(b)+c; j++;), операторы объявления, составные операторы, пустые операторы, операторы метки, цикла и т.д. Для обозначения конца оператора в языке Си используется точка с запятой. Что касается составного оператора (или блока), представляющего собой набор логически связанных операторов, помещенных между открывающей ({) и закрывающей (}) фигурными скобками (" операторными скобками"), то за ним точка с запятой не ставится. Отметим, что блок отличается от составного оператора наличием определений в теле блока. В блок-схемах обычная математическая запись Каждое имя в программе (в том числе в блок-схеме) – это косвенное обозначение адреса поля памяти. Следовательно, при выполнении оператора
y a b x Память
Выполнение оператора присваивания производится в четкой последовательности во времени: 1) из памяти в процессор читаются значения переменных 2) в процессоре вычисляется значение выражения 3) результат вычислений записывается в память в поле с именем
Использование операции присваивания позволяет записывать такие конструкции, которые в обычной математической интерпретации бессмысленны. Например,
Пример 1. Обменять значения переменных Если мы перешлем содержимое поля
Числа 1, 2, 3 указывают последовательность пересылок содержимого полей памяти
Представленную выше схему можно реализовать такими операторами:
Подчеркнем еще раз смысл оператора присваивания. Если в правой части оператора записана переменная, например,
то это означает, что содержимое поля памяти с именем (адресом)
Если в правой части оператора присваивания стоит выражение, например,
то вначале в процессор читаются значения операндов (содержимое поля Если в левой части оператора присваивания записаны имена двух переменных, например,
В Си оператор присваивания имеет такое же обозначение, как и на блок-схеме. Его синтаксическая диаграмма:
Выражение состоит из операндов, знаков операций и круглых скобок. Операндом может быть константа, переменная или функция. Выражение задает порядок вычисления значения, основанный на обычном правиле вычисления слева направо и старшинстве операций. В частном случае, в качестве выражения может выступать имя переменной.
|