ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Операции и выраженияВ таблице ниже сведены относительные приоритеты операций и порядок их выполнения в выражениях. Строки расположены в порядке убывания приоритетов, а операции, перечисленные в одной строке, имеют одинаковый приоритет. Поэтому + и – имеют одинаковый приоритет и он выше чем у операций << и > >.Группировка операций и операндов кодируется так: «справа – налево - <-» или «слева – направо - ->». Таким образом, a+b+c при группировке эквивалентно (a+b)+c, а присваивание a=b=c будет группироваться иначе - a=(b=c).
Для операций &&, ||,?: гарантируется вначале выполнение левого операнда. Для остальных операторов порядок вычисления операндов не фиксируется и зависит только от компилятора Пример a=y>c?b:a; a=y>(c?b:l>k?f:g); Операции группируются следующим образом: a=(y>(c?b:((l>k)?f:g)); вначале - с, затем в зависимости от с будет b или l>k и затем в зависимости от l>k будет вычисляться f или g, затем y>… Задача a=b=y>x?z=a+b:k; Группирование: a=(b=((y>x)?(z=(a+b)):k)); В первую очередь в выражениях вычисляются операции с более высоким приоритетом. Так: a=((y>c)?b:a); Вначале y>c, затем?: и потом =. Для того, чтобы легче было ориентироваться в порядке вычисления операций, выделим те подвыражения, называемые первичными, которые будут вычисляться в первую очередь. 1 идентификатор 2 константа 3 строка 4 (выражение) 5 первичное_ выражение [выражение] 6 первичное _выражение (список_выражений opt) 7 первичный_адрес.идентификатор 8 первичное_ выражение à идентификатор Смысл первых двух строчек понятен. Уточним остальные: 3 имеются в виду строки вида “….”. Например, f(“data”); 4 скобки управляющие приоритетом, выделяющие подвыражение (a+b)*c 5 индексированные переменные ….а +ARRAY [i][j]*c… 6 указатели функций..1.2*func (a,b)+pi 7 обращение к элементу записи. Например, - str1.fp.a здесь str1 имя структурной переменной, fp – имя подполя и а - имя подполя следующего уровня (вложенного в fp). 8 обращение к элементу записи через указатель, ссылающийся на запись: p-> fp.a. В этом случае p должен содержать адрес структуры, например, str1. Не нашли, что искали? Воспользуйтесь поиском:
|