русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Унарные операции


Дата добавления: 2015-01-16; просмотров: 737; Нарушение авторских прав


Выражение с унарными операциями группируется справо на-лево. Унарное-выражение: * выражение & L-значение - выражение ! Выражение \^ выражение ++ L-значение -- L-значение L-значение ++ L-значение -- (имя-типа) выражение SIZEOF выражение SIZEOF имя-типа Унарная операция * означает косвенную адресацию: выраже-ние должно быть указателем, а результатом является L-значе-ние, ссылающееся на тот объект, на который указывает выраже-ние. Если типом выражения является "указатель на...", то ти-пом результата будет "...". Результатом унарной операции & является указатель наобъект, к которому ссылается L-значение. Если L-значениеимеет тип "...", то типом результата будет "указатель на...". Результатом унарной операции - (минус) является ее опе-ранд, взятый с противоположным знаком. Для величины типаUNSIGNED результат получается вычитанием ее значения из 2**N(два в степени N), где N-число битов в INT. Унарной операции+ (плюс) не существует. Результатом операции логического отрицания ! Является 1,если значение ее операнда равно 0, и 0, если значение ееоперанда отлично от нуля. Результат имеет тип INT. Эта опе-рация применима к любому арифметическому типу или указате-лям. Операция \^ дает обратный код, или дополнение до едини-цы, своего операнда. Выполняются обычные арифметические пре-образования. Операнд должен быть целочисленного типа. Объект, на который ссылается операнд L-значения префикс-ной операции ++, увеличивается. значением является новоезначение операнда, но это не L-значение. Выражение ++х экви-валентно х+=1. Информацию о преобразованиях смотри в разбореоперации сложения (п. 15.4) и операции присваивания (п.15.14). Префиксная операция -- аналогична префиксной операции++, но приводит к уменьшению своего операнда L-значения. При применении постфиксной операции ++ к L-значению ре-зультатом является значение объекта, на который ссылаетсяL-значение. После того, как результат принят к сведению,объект увеличивается точно таким же образом, как и в случаепрефиксной операции ++. Результат имеет тот же тип, что ивыражение L-значения. При применении постфиксной операции -- к L-значению ре-зультатом является значение объекта, на который ссылаетсяL-значение. После того, как результат принят к сведению,объект уменьшается точно таким же образом, как и в случаепрефиксной операции --. Результат имеет тот же тип, что ивыражение L-значения. Заключенное в круглые скобки имя типа данных,стоящее пе-ред выражением , вызывает преобразование значения этого вы-ражения к указанному типу. Эта конструкция называется пере-вод (CAST). Имена типов описываются в п. 16.7. Операция SIZEOF выдает размер своего операнда в байтах.(Понятие байт в языке не определено, разве только как значе-ние операции SIZEOF. Однако во всех существующих реализацияхбайтом является пространство, необходимое для храненияобъекта типа CHAR). При применении к массиву результатом яв-ляется полное число байтов в массиве. Размер определяется изописаний объектов в выражении. Это выражение семантическиявляется целой константой и может быть использовано в любомместе, где требуется константа. Основное применение эта опе-рация находит при связях с процедурами, подобным распредели-телям памяти, и в системах ввода- вывода. Операция SIZEOF может быть также применена и к заключен-ному в круглые скобки имени типа. В этом случае она выдаетразмер в байтах объекта указанного типа. Конструкция SIZEOF (тип) рассматривается как целое, такчто выражение SIZEOF (тип) - 2 эквивалентно выражению(SIZEOF (тип)9 - 2.


<== предыдущая лекция | следующая лекция ==>
Первичные выражения | Аддитивные операции


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.514 сек.