![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
То, что присваивание в Си является операцией, а не оператором, оказывается, наверное, самой большой неожиданностью для знатоков Паскаля. А между тем это действительно так! Знак операции присваивания =. Следствием отмеченного факта является то, что присваивание, как любой другой знак операции, может несколько раз входить в выражение. Например:
а=b=с=х+y;
Присваивание имеет самый низкий приоритет (ниже только у операции «запятая»). Кроме того, операция присваивания - правоассоциативная. Это значит, что несколько подряд расположенных присваиваний выполняются справа налево. Поэтому в приведенном выше выражении первой выполнится операция сложения, затем переменной с присвоится значение суммы, затем это значение присвоится переменной b и в конце - переменной а.
В языке Си имеются дополнительные операции присваивания, совмещающие присваивание с выполнением других операций. Среди них: +=, -=, /=, *=, %=. Приоритет у них такой же, как и у простого присваивания. Примеры использования этих операций:
а+=2 эквивалентно а=а+2,
х-=а+b эквивалентно х=х-(а+b),
р/=10 эквивалентно р=р/10,
m*=n эквивалентно m=m*n,
r%=5 эквивалентно r=r%5.
Заметим, что вместо выражения а=а+2 предпочтительнее писать в программе а+=2, поскольку второе выражение будет вычисляться быстрее.
Дата публикования: 2014-11-02; Прочитано: 232 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!