Книга: Язык Си - руководство для начинающих
Приоритеты операций отношения
Приоритеты операций отношения
Приоритет операций отношения считается меньшим, чем у операций + и -, и больше, чем у операции присваивания. Например, значение выражения:
х > y + 2
то же, что и выражения
х > (у + 2)
Это означает также, что выражение
ch = getchar( ) != EOF
эквивалентно
ch = (getchar( ) != EOF)
поскольку наличие у оператора !=, более высокого приоритета говорит о том, что она выполняется перед присваиванием. Поэтому значение переменной ch может стать либо 1, либо 0 ввиду того, что (getchar( ) != EOF) - условное выражение, значение которого присваивается переменной ch. Поскольку в примерах программ рассмотренных до сих пор, предполагалось, что переменная ch получает свое значение от функции getchar( ), мы использовали скобки, чтобы организовать выполнение операций в нужном порядке.
(ch = getchar( )) != EOF
Сами операции отношения можно разбить на две группы в соответствии с назначенными приоритетами:
группа операций более высокого приоритета: < <= => >
группа операций более низкого приоритета: = = !=
Подобно большинству остальных операций операции отношения выполняются слева направо. Поэтому под записью:
ех != wye == zee
подразумевается
(ex != wye) == zee
Следовательно, в соответствии с правилами языка Си сначала проверяется, равны ли значения переменных ех и wye. Результирующая величина, равная 1 или 0 (истина или ложь), затем сравнивается со значением zee. Мы не видим реальной необходимости использовать подобного сорта конструкцию, но считаем своим долгом указать на возможные следствия принятого порядка выполнения операций.
Читателю, озабоченному сохранением своего высокого приоритета, хотим напомнить, что полный список всех операций вместе с их приоритетами приведен в приложении В в конце книги.
- Резюме: операции отношения и выражения
- ЧТО ВАЖНЕЕ: ОПЕРАЦИИ ОТНОШЕНИЯ ИЛИ ВЫРАЖЕНИЯ
- 3.4. Отношения между классами
- 1.2.4. Операторы и приоритеты
- 5. Отношения. Типы отношений
- 4. Свойства унарных операций
- 3. Свойства бинарных операций
- 4. Варианты операций соединения
- 2. Пример создания базового отношения в записи на псевдокоде
- При неудачном выполнении некоторых операций Windows динамик издает пронзительный звук. Можно ли заставить его замолчать?
- Отношения типа многие-ко-многим
- Отношения типа один-ко-многим