Побочные эффекты

Побочные эффекты

Побочный эффект выражается в неявном изменении значения переменной в процессе вычисления выражения. Все операции присваивания могут вызывать побочный эффект. Вызов функции, в которой изменяется значение какой-либо внешней переменной, либо путем явного присваивания, либо через указатель, также имеет побочный эффект.

Порядок вычисления выражения зависит от реализации компилятора, за исключением случаев, в которых явно гарантируется определенный порядок вычислений (см. раздел 4.5). При вычислении выражения в языке Си существуют так называемые контрольные точки. По достижении контрольной точки все предшествующие вычисления, в том числе все побочные эффекты, гарантированно произведены. Контрольными точками являются операция последовательного вычисления, условная операция, логические операции И и ИЛИ, вызов функции. Другие контрольные точки:

—конец полного выражения (т.е. выражения, которое не является частью другого выражения);

—конец инициализирующего выражения для переменной класса памяти auto;

—конец выражений, управляющих выполнением операторов if, switch, for, do, while и выражения в операторе return. Приведем примеры побочных эффектов:

add(i + 1, i = j + 2);

Аргументы вызова функции add могут быть вычислены в любом порядке. Выражение i+1 может быть вычислено перед выражением i=j+2, или после него, с различным результатом в каждом случае.

Унарные операции инкремента и декремента также содержат в себе присваивание и могут быть причиной побочных эффектов, как это показано в следующем примере:

int i, а [10];

i = 0;

a[i++] = i;

Неизвестно, какое значение будет присвоено элементу а[0] — нуль или единица, поскольку для операции присваивания порядок вычисления аргументов не оговаривается.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Эффекты анимации

Из книги Microsoft Office автора Леонтьев Виталий Петрович

Эффекты анимации Если бы мы работали в Word или Publisher, то на этом, собственно, пришлось бы и остановиться – что можно сделать с неподвижной картинкой? Но слайду в PowerPoint совершенно нет нужды быть неподвижным! Напротив, ему это в корне противопоказано.Надписи, картинки и прочие


7.4. Побочные электромагнитные излучения

Из книги Защити свой компьютер на 100% от вирусов и хакеров автора Бойцев Олег Михайлович

7.4. Побочные электромагнитные излучения Говоря о многоуровневой защите, нельзя не упомянуть о таком явлении, как утечка информации посредством паразитного электромагнитного излучения.Представьте себе такую ситуацию: ваша компания оперирует с информацией закрытого


10. Трюки и эффекты

Из книги Как перейти на Windows Vista. Начали! автора Бардиян Дмитрий Владимирович

10. Трюки и эффекты На вопрос: «Какую операционную систему вы считаете самым сильным конкурентом Windows Vista?» представители Microsoft достаточно самоуверенно ответили: «Windows XP SP2».Каждая новая версия Windows создает ажиотаж во всех сферах информационных технологий. Техническая


Введение в эффекты

Из книги Sound Forge 9 автора Квинт Игорь

Введение в эффекты В программе доступно более 40 специальных эффектов и преобразователей звука. Все эффекты можно разделить на группы.• Эффекты эха – создают эффекты, добавляющие эхо.• Эффекты высоты тона – создают эффекты звучания, основанные на изменении высоты


Оптические эффекты

Из книги 3ds Max 2008 автора Верстак Владимир Антонович

Оптические эффекты Оптические эффекты выступают как часть процесса визуализации, позволяя повысить реалистичность трехмерных сцен. Доступ к группе оптических эффектов можно получить при помощи вкладки Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты) (рис.


Стили и эффекты

Из книги Excel. Мультимедийный курс автора Мединов Олег

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


Звуковые эффекты

Из книги Pinnacle Studio 11 автора Чиртик Александр Анатольевич

Звуковые эффекты В программе Studio также реализовано несколько звуковых эффектов, некоторые из которых могут оказаться весьма полезными. Для применения эффектов к выделенному аудиоклипу используется инструмент Добавление аудиоэффектов (последний в


Специальные эффекты

Из книги Adobe InDesign CS3 автора Завгородний Владимир

Специальные эффекты Adobe InDesign также умеет создавать интересные и полезные эффекты, которые мы можем использовать при оформлении текста. По сути, здесь мы снова сталкиваемся с взаимопроникновением программ фирмы Adobe, поскольку данные эффекты «заимствованы» из программы


Часть III. ЭФФЕКТЫ

Из книги Adobe Fotoshop CS в примерах (III-IV) автора Топорков Сергей Сергеевич

Часть III. ЭФФЕКТЫ В этой части мы будем говорить об эффектах (они же стили). На первый взгляд кажется, что название новое, и мы с ним еще не встречались, но это не так. Достаточно вспомнить такие эффекты, как Bevel and Emboss (Фаска и рельеф) и Gradient Overlay (Наложение градиента). Но если


Визуальные эффекты

Из книги Установка и настройка Windows XP. Легкий старт автора Донцов Дмитрий

Визуальные эффекты Начнем с самого простого. Выполните команду Пуск ? Панель управления, в открывшемся окне дважды щелкните на значке Система и перейдите на вкладку Дополнительно. В области Быстродействие нажмите кнопку Параметры. В открывшемся окне Параметры


Глава 8 Эффекты

Из книги Photoshop CS3: Обучающий курс автора Тимофеев Сергей Михайлович

Глава 8 Эффекты Эффекты – это специальные средства, позволяющие преобразовать некоторые элементы изображения, они могут применяться в отношении отдельных элементов, а также в отношении слоев целиком. Эффекты дают возможность зрительно выделять контуры элемента,


Звуковые эффекты

Из книги Программирование КПК и смартфонов на .NET Compact Framework автора Климов Александр П.

Звуковые эффекты Неплохо бы добавить в игру звуковые эффекты. К сожалению, библиотека .NET Compact Framework пока не поддерживает воспроизведение звуковых файлов при помощи управляемого кода. Поэтому придется воспользоваться механизмом Platform Invoke (P/Invoke). В главе, посвященной


Простейшие эффекты

Из книги Macromedia Flash Professional 8. Графика и анимация автора Дронов В. А.

Простейшие эффекты Начнем мы с создания самых простых эффектов. Всего их два: клонирование выделенного экземпляра по ячейкам воображаемой сетки и его анимированное


Эффекты изменений

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Эффекты изменений Однажды вызванный запрос к триггеру или хранимой процедуре сохраняется в кэше метаданных, пока существуют клиентские соединения с базой данных, независимо от того, использует ли какой-нибудь клиент этот триггер или хранимую процедуру. Не существует


Неожиданные эффекты

Из книги Компьютерная обработка звука автора Загуменнов Александр Петрович

Неожиданные эффекты SQL позволяет.одному и тому же получателю прав получать одни и те же полномочия из различных источников, даже если предоставляемые права уже есть у получателя. Каждый раз, когда один пользователь расширяет у другого пользователя права передавать


Звуковые эффекты

Из книги автора

Звуковые эффекты Звуковые эффекты добавляют звучанию особый колорит, а иногда меняют звук до неузнаваемости.Задержка сигналовК эффектам, основанным на задержке сигнала, относятся следующие:•  дилэй (от англ. delay – задержка);•  реверберация (от англ. reverberation –