Язык программирования Си. Издание 3-е, исправленное
Шрифт:
выражение-отношения
выражение-равенства == выражение-отношения
выражение-равенства != выражение-отношения
выражение-отношения:
сдвиговое-выражение
выражение-отношения < сдвиговое-выражение
выражение-отношения > сдвиговое-выражение
выражение-отношения <= сдвиговое-выражение
выражение-отношения >= сдвиговое-выражение
сдвиговое-выражение:
аддитивное-выражение
сдвиговое-выражение >> аддитивное-выражение
сдвиговое-выражение << аддитивное-выражение
аддитивное-выражение:
мультипликативное-выражение
аддитивное-выражение + мультипликативное-выражение
аддитивное-выражение– мультипликативное-выражение
мультипликативное-выражение:
выражение-приведенное-к-типу
мультипликативное-выражение * выражение-приведенное-к-типу
мультипликативное-выражение / выражение-приведенное-к-типу
мультипликативное-выражение % выражение-приведенное-к-типу
выражение-приведенное-к-типу:
унарное-выражение
( имя-типа ) выражение-приведенное-к-типу
унарное-выражение:
постфиксное –выражение
++ унарное-выражение
– - унарное-выражение
унарный-оператор
выражение-приведенное-к-типу
sizeof унарное-выражение
sizeof( имя-типа )
унарный-оператор: один из
& * + - ~ !
постфиксное-выражение:
первичное-выражение
постфиксное-выражение [ выражение ]
постфиксное-выражение ( список-аргументов-выраженийнеоб )
постфиксное-выражение , идентификатор
постфиксное-выражение– > идентификатор
постфиксное-выражение ++
постфиксное-выражение– -
первичное -выражение:
идентификатор
константа
строка
( выражение )
список-аргументов-выражений:
выражение-присваивания
список-аргументов-выражений , выражение-присваивания
константа:
целая-константа
символьная-константа
константа-с-плавающей-точкой
константа-перечисление
Ниже
приводится грамматика языка препроцессора в виде перечня структур управляющих строк. Для механического получения программы грамматического разбора она не годится. Грамматика включает символ текст, который означает текст обычной программы, безусловные управляющие строки препроцессора и его законченные условные конструкции.управляющая-строка:
#define идентификатор последовательность-лексем
#define идентификатор ( идентификатор, ..., идентификатор) последовательность-лексем
#undef идентификатор
#include <имя-файла>
#include "имя-файла"
#include последовательность-лексем
#line константа "идентификатор"
#line константа
#error последовательность-лексемнеоб
#pragma последовательность-лексемнеоб
#
условная-конструкция-препроцессора
Поделиться с друзьями: