Операции и L-выражения
Операции и L-выражения
В зависимости от используемых операций выражения подразделяются на первичные, унарные, бинарные, тернарные, выражения присваивания и выражения приведения типа.
Первичные выражения рассмотрены в разделах 4.2.4, 4.2.5, 4.2.6.
Унарное выражение состоит из операнда с предшествующей ему унарной операцией.
Синтаксис:
<унарная-операция> <операнд>
Унарные операции рассмотрены в разделе 4.3.2.
Бинарное выражение состоит из двух операндов, разделенных бинарной операцией.
Синтаксис:
<операнд1> <бинарная-операция> <операнд2>
Бинарные операции рассмотрены в разделах 4.3.3 — 4.3.9.
Тернарное выражение состоит из трех операндов, разделенных знаками условной операции "?:".
Синтаксис:
<операнд1> ? <операнд2> : <операнд3>
Условная операция рассмотрена в разделе 4.3.10.
Выражения присваивания используют унарные или бинарные операции присваивания. Унарными операциями присваивания являются инкремент "++" и декремент "--". Бинарные операции присваивания — это простое присваивание "=" и составные операции присваивания. Каждая составная операция присваивания представляет собой комбинацию какой-либо бинарной операции с простой операцией присваивания.
Синтаксис выражений присваивания:
Унарные операции присваивания:
<операнд> ++
<операнд> --
++ <операнд>
--<операнд>
Бинарные операции присваивания:
<операнд1> = <операнд2>
<операнд1> <составное-присваивание> <операнд2>
Операция присваивания рассмотрена в разделе 4.4.
Выражения приведения типа используют операцию приведения типа для явного преобразования типа переменной скалярного типа (целого, перечислимого, плавающего, пустого, указателя).
Синтаксис:
(<абстрактное-имя-типа>) <операнд>
Операция приведения типа подробно рассматривается в разделе 4.7.2. Абстрактные имена типов описаны в разделе 3.8.3.
Операнды некоторых операций в языке Си должны представлять собой так называемые L-выражения (Lvalue expressions). L-выражением является выражение, которое ссылается на ячейку памяти и потому имеет смысл в левой части бинарной операции присваивания. Простейшим примером L-выражения является идентификатор переменной: он ссылается на ячейку памяти, которая хранит значение этой переменной.
Поскольку L-выражение ссылается на ячейку памяти, адрес этой ячейки может быть получен с помощью операции адресации (&). Имеются, однако, исключения: не может быть получен адрес битового поля и адрес переменной класса памяти register, хотя значение им может быть присвоено.
К L-выражениям относятся:
— идентификаторы переменных целого, плавающего, перечислимого типов, указателей, структур и объединений;
— индексные выражения, исключая те из них, значение которых имеет тип массив;
— выражение выбора элемента, если выбранный элемент сам является одним из допустимых L-выражений;
— выражение косвенной адресации, если только его значение не имеет тип массив или функция;
— L-выражение в скобках;
— выражение приведения типа переменной, если размер результирующего типа не превышает размера первоначального типа. Следующий пример иллюстрирует этот случай:
char *р;
int i;
long n;
(long *)p = &n; /* допустимое приведение типа */
(long)i = n; /* недопустимое приведение типа */
Перечисленные L-выражения называются также модифицируемыми L-выражениями. Кроме того, существуют немодифицируемые L-выражения; их адрес может быть получен, но использоваться в левой части бинарной операции присваивания они не могут. К ним относятся идентификаторы массивов, функций, а также переменных, объявленных с модификатором const.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
CSS-выражения
CSS-выражения CSS-выражения (англ. CSS expressions) были впервые представлены в Internet Explorer 5.0, который позволял назначать JavaScript-выражение в качестве CSS-свойства. Например, следующий код позволит выставить позицию элемента в зависимости от того, какого размера окно браузера.#myDiv {position:
Выражения
Выражения ifПозволяет организовывать выполнение фрагментов кода по условию.Синтаксис :if (выражение) statementМожет иметь неограниченную степень вложенности в другие IF.if($a > $b) print "$a больше $b";<?phpif($a > $b) { echo "$a больше $b; $b=$a;}?>elseРасширяет возможности IF по части обработки
R.17.2 Выражения
R.17.2 Выражения выражение: выражение-присваивания выражение , выражение-присваиваниявыражение-присваивания: выражение-условия унарное-выражение операция-присваивания выражение-присваиванияоперация-присваивания: один из = *= /= %= += -= ››= ‹‹= &= ^=
5. Операции, выражения и операторы
5. Операции, выражения и операторы ОПЕРАЦИИ И ОПРАТОРЫ. ВЫПОЛНЕНИЕ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ. ИСПОЛЬЗОВАНИЕ ОПЕРАТОРА while. ВЫРАЖЕНИЯ. ПРОСТЫЕ СОСТАВНЫЕ ОПЕРАТОРЫ. ПРЕОБРАЗОВАНИЯ ТИПОВ. КЛЮЧЕВЫЕ СЛОВА. While. ОПЕРАЦИИ. + - * / % ++ -- (тип)
ЧТО ВАЖНЕЕ: ОПЕРАЦИИ ОТНОШЕНИЯ ИЛИ ВЫРАЖЕНИЯ
ЧТО ВАЖНЕЕ: ОПЕРАЦИИ ОТНОШЕНИЯ ИЛИ ВЫРАЖЕНИЯ Операции отношения используются для сравнений. Мы уже использовали ранее некоторые из них, а сейчас приведем полный список операций отношения, применяемых при программировании на языке Си.
Резюме: операции отношения и выражения
Резюме: операции отношения и выражения 1. Операции отношенияС помощью каждой из приведенных ниже операции величина слева от знака сравнивается с величиной справа от него: 2. Больше 3. Больше или равно 4. Равно 5. Меньше или равно 6. Меньше 7.
Резюме: логические операции и выражения
Резюме: логические операции и выражения 1. ЛОГИЧЕСКИЕ ОПЕРАЦИИ Операндами логических операций обычно являются условные выражения. У операции != имеется только один операнд. Остальные имеют по два - один слева от знака и другой справа от него. && И|| ИЛИ! НЕII.
4.3. Операции сравнения и логические операции
4.3. Операции сравнения и логические операции Символ операции Значение Использование ! Логическое НЕ !expr меньше exprexpr = Меньше либо равно expr=expr больше exprexpr = больше либо равно expr=expr == равно expr==expr != не равно expr!=expr логическое
Выражения
Выражения Многие из задач, которые, так или иначе, выполняются во время преобразования, связаны с вычислением выражений. Для этих целей в XSLT используется язык XPath, который помимо выбора множеств узлов дерева может также выполнять некоторые основные операции над
7. Выражения
7. Выражения Приоритет операций в выраженях такой же, как и порядок главных подразделов в этом разделе, наибольший приоритет у первого. Так например, выражения, о которых говорится как об операндах операции + (#7.4) – это те выражения, которые опрделены в ##7.1-7.4. Внутри каждого
14.1 Выражения
14.1 Выражения выражение: терм выражение бинарная_операция выражение выражение ? выражение : выражение список_выраженийсписок_выражений: выражение список_выражений , выражениетерм: первичное_выражение унарная_операция терм терм ++ терм – sizeof выражение sizeof ( имя_типа ) (
Выражения и операции
Выражения и операции Выражения и операции: обзор Выражение - это конструкция, возвращающая значение некоторого типа. Простыми выражениями являются переменные и константы, например: 3.14 x Более сложные выражения строятся из простых с помощью операций, вызовов функций и
Выражения и операции: обзор
Выражения и операции: обзор Выражение - это конструкция, возвращающая значение некоторого типа. Простыми выражениями являются переменные и константы, например: 3.14 x Более сложные выражения строятся из простых с помощью операций, вызовов функций и скобок. Данные, к