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

Скачать в pdf «Язык программирования C»
А.7.4. Одноместные операции


Выражения с одноместными операциями группируются справа налево.


одноместное-выражение:


постфиксное-выражение ++ одноместное-выражение — одноместное-выражение


одноместная-операция выражение — приведения-к-типу sizeof одноместное-выражение sizeof (имя-типа)


одноместная-операция: один из &* + —!


А.7.4.1. Префиксные операции инкрементирования


Одноместное выражение, перед которым стоит знак ++ или — -, также является одноместным выражением. Операция увеличивает (++) или уменьшает (—) свой операнд на единицу. Значением выражения служит результат инкрементирования (или декрементирования). Операнд должен быть именующим выражением (lvalue)-, дополнительные ограничения на операнд и подробности выполнения операции см. в разделе А.7.7 об аддитивных операциях и в разделе А.7.17 о присваивании. Сам результат операции не является именующим выражением.


А.7.4.2. Операция взятия адреса


Знак одноместной операции (&) обозначает получение адреса своего операнда. Операнд должен быть либо именующим выражением (lvalue), не ссылающимся ни на битовое поле, ни на объект, объявленный как register, либо объектом типа “функция”. Результат— это указатель на объект или функцию, который обозначается выражением-операндом. Если операнд имеет тип Т, то типом результата является “указатель на Т


А.7.4.3. Операция разыменования (ссылки по указателю)


Знак одноместной операции (*) обозначает обращение по указателю (разыменование), дающее объект (в том числе функцию), на который указывает ее операнд. Результат является именующим выражением (lvalue), если операнд— указатель на объект арифметического типа, структуру, объединение или указатель. Если тип выражения — “указатель на Т то типом результата будет Т.


А.7.4.4. Операция “одноместный плюс”


Операнд одноместной операции (+) должен иметь арифметический тип; операция дает в качестве результата значение операнда. Целочисленный операнд преобразуется по правилам расширения целочисленных типов. Типом результата является расширенный тип операнда.

Скачать в pdf «Язык программирования C»