ВУЗ:
Составители:
29
Порядок можно рассматривать как направление,
в котором выполняются операции, обладающие одинаковым приоритетом .
Операции, требующие более одного операнда, могут быть
коммутативными и некоммутативными. Говорят, что операция
коммутативна , если перестановка местами двух ее операндов не изменяет
значение результата операции. Коммутативные операции в языке С:
умножение ( * ), сложение ( + ), равно ( = = ), не равно ( ! =), побитовое И (
& ), побитовое исключающее ИЛИ (^) , побитовое ИЛИ ( | ).
Выражения , включающие одну из коммутативных операций , даже
при наличии скобок могут быть переупорядочены компилятором. Во
многих случаях это несущественно, но в тех ситуациях, где важно оставить
порядок вычислений , можно использовать явную промежуточную
переменную .
В языке С не задан порядок вычисления операндов для операций . В
этом случае для задания определенного порядка выполнения
промежуточный результат можно сохранить в некоторой промежуточной
переменной. Но существуют четыре операции в языке С, которые имеют
жесткий порядок вычисления : логическое И (&&), логическое ИЛИ (||),
запятая (,), условное выражение (? :). Операнды в этих операциях
вычисляются всегда слева направо .
3.2. Первичные выражения
Первичные выражения включают операции: доступа к элементу
структуры по имени, доступа к элементу структуры по указателю ,
индексации и вызова функции.
Полный список первичных выражений в языке С: константа, строка,
идентификатор, (выражение), первичное выражение [выражение],
первичное выражение (список выражений ), первичный
адрес. идентификатор, первичное выражение -> идентификатор.
Константа имеет тип в соответствии с ее видом . Символьные
константы имеют тип int, константы с плавающей точкой – тип double.
Строка представляется указателем на начало массива составляющих
ее символов.
29 Порядок можно рассматривать как направление, в котором выполняются операции, обладающие одинаковым приоритетом. Операции, требующие более одного операнда, могут быть коммутативными и некоммутативными. Говорят, что операция коммутативна, если перестановка местами двух ее операндов не изменяет значение результата операции. Коммутативные операции в языке С: умножение ( * ), сложение ( + ), равно ( = = ), не равно ( ! =), побитовое И ( & ), побитовое исключающее ИЛИ (^) , побитовое ИЛИ ( | ). Выражения, включающие одну из коммутативных операций, даже при наличии скобок могут быть переупорядочены компилятором. Во многих случаях это несущественно, но в тех ситуациях, где важно оставить порядок вычислений, можно использовать явную промежуточную переменную. В языке С не задан порядок вычисления операндов для операций. В этом случае для задания определенного порядка выполнения промежуточный результат можно сохранить в некоторой промежуточной переменной. Но существуют четыре операции в языке С, которые имеют жесткий порядок вычисления: логическое И (&&), логическое ИЛИ (||), запятая (,), условное выражение (? :). Операнды в этих операциях вычисляются всегда слева направо. 3.2. Первичные выражения Первичные выражения включают операции: доступа к элементу структуры по имени, доступа к элементу структуры по указателю, индексации и вызова функции. Полный список первичных выражений в языке С: константа, строка, идентификатор, (выражение), первичное выражение [выражение], первичное выражение (список выражений), первичный адрес.идентификатор, первичное выражение -> идентификатор. Константа имеет тип в соответствии с ее видом. Символьные константы имеют тип int, константы с плавающей точкой – тип double. Строка представляется указателем на начало массива составляющих ее символов.
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »