Операторы присваивания.
Основы кодирования в информационных системах
Сдвиг значения первого операнда вправо на количество битов, заданное значением второго операнда; сохранение результата в объект, указанный первым операндом. Сдвиг значения первого операнда влево на количество битов, заданное значением второго операнда; сохранение результата в объект, указанный первым операндом. Выполнение операции побитового исключающего ИЛИ для значений первого и второго… Читать ещё >
Операторы присваивания. Основы кодирования в информационных системах (реферат, курсовая, диплом, контрольная)
Операторы присваивания сохраняют значение в объекте, обозначенном левым операндом. Существует два типа операторов присваивания: простое присваивание, при котором значение второго операнда сохраняется в объекте, заданном первым операндом, и составное присваивание, при котором сначала выполняется арифметическая или побитовая операция или операция сдвига, а затем сохраняется результат. Все операторы присваивания в следующей таблице, за исключением оператора =, являются составными.
Операторы присваивания
Operator. | Назначение. |
=. | Сохранение значения второго операнда в объект, указанный первым операндом (простое присваивание). |
*=. | Умножение значения первого операнда на значение второго операнда; сохранение результата в объект, указанный первым операндом. |
/=. | Деление значения первого операнда на значение второго операнда; сохранение результата в объект, указанный первым операндом. |
%=. | деление по модулю первого операнда на значение второго операнда; сохранение результата в объект, указанный первым операндом. |
+=. | Сложение значения первого операнда со значением второго операнда; сохранение результата в объект, указанный первым операндом. |
— =. | Вычитание значения второго операнда из значения первого операнда; сохранение результата в объект, указанный первым операндом. |
" =. | Сдвиг значения первого операнда влево на количество битов, заданное значением второго операнда; сохранение результата в объект, указанный первым операндом. |
" =. | Сдвиг значения первого операнда вправо на количество битов, заданное значением второго операнда; сохранение результата в объект, указанный первым операндом. |
&=. | Выполнение операции побитового И для значений первого и второго операндов; сохранение результата в объект, указанный первым операндом. |
^=. | Выполнение операции побитового исключающего ИЛИ для значений первого и второго операндов; сохранение результата в объект, указанный первым операндом. |
|=. | Выполнение операции побитового включающего ИЛИ для значений первого и второго операндов; сохранение результата в объект, указанный первым операндом. |
Табл. 2.
Оператор присваивания — это самый употребительный оператор. Его назначение — присвоить новое значение какой-либо переменной. В C++ имеется три формы этого оператора.
1) Простой оператор присваивания записывается так:
переменная = выражение;
Данный оператор работает следующим образом: вначале вычисляется выражение, записанное справа от символа операции = (равно), затем полученный результат присваивается переменной, стоящей слева от знака =. Тип результата должен совпадать с типом переменной, записанной слева, или быть к нему приводимым.
Слева от знака = может быть только переменная, справа же можно записать и константу, и переменную и вообще выражение любой сложности.
Пример операторов:
x=3;
r=x;
y=x+3*r;
s=sin (x);
2) Множественное присваивание — в таком операторе последовательно справа налево нескольким переменным присваивается одно и то же значение, например:
a=b=c=1;
Так можно сразу определить, к примеру, что в равностороннем треугольнике все стороны равны одному и тому же числу 1. Приведенный выше оператор эквивалентен последовательному выполнению трёх операторов:
a=1;
b=a;
c=b;
Естественно, нам проще записать один оператор, а не три. Программа получается короче, более естественно смотрится текст, и работает такая конструкция немного быстрее.
3) Присваивание с одновременным выполнением какой-либо операции в общем виде записывается так:
переменная знак_операции = выражение;
и равносильно записи.
переменная = переменная знак_операции выражение;
Например, оператор:
s += 5; // 1-й вариант
делает то же самое, что и оператор
s = s + 5; // 2-й вариант
а именно: взять старое значение из переменной s, прибавить к нему число 5 и полученное значение снова записать в переменную s.
Как видим, запись 1-го варианта короче записи 2-го варианта, да и выполняется быстрее, так как в 1-м варианте адрес переменной s вычисляется 1 раз, а во 2-м варианте — дважды.