Сводка синтаксических правил 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Сводка синтаксических правил



Эта сводка синтаксиса языка "C" предназначена скорее дляоблегчения понимания и не является точной формулировкой язы-ка.

Выражения

Основными выражениями являются следующие: выражение: первичное-выражение * выражение & выражение - выражение! Выражение \^ выражение ++ L-значение -- L-значение L-значение ++ L-значение -- SIZEOF выражение (имя типа) выражение выражение бинарная-операция выражение выражение? Выражение: выражение L-значение операция-присваивания выражение выражение, выражение первичное выражение: идентификатор константа строка (выражение) первичное-выражение (список выражений необ) первичное-выражение [выражение] L-значение. Идентификатор первичное выражение -> идентификатор L-значение: идентификатор первичное-выражение [выражение] L-значение. Идентификатор первичное-выражение -> идентификатор * выражение (L-значение) Операции первичных выражений () []. -> имеют самый высокий приоритет и группируются слеванаправо. Унарные операции * & -! \^ ++ -- SIZEOF(Имя типа) имеют более низкий приоритет, чем операции первичных выраже-ний, но более высокий, чем приоритет любой бинарной опера-ции. Эти операции группируются справа налево. Все бинарныеоперации и условная операция (прим. Перевод.: условная опе-рация группируется справа налево; это изменение внесено вязык в 1978 г.) группируются слева направо и их приоритетубывает в следующем порядке: Бинарные операции: * / % + - >> << < > <= >= ==!= & \^ \! && \!\!?: Все операции присваивания имеют одинаковый приоритет и груп-пируются справа налево.Операции присваивания: = += -= *=?= %= >>= <<= &= \^= \!= Операция запятая имеет самый низкий приоритет и группируетсяслева направо.

Описания

Описание:спецификаторы-описания список-инициализируемых-описателей необ; спецификаторы-описания: спецификатор-типа спецификаторы-описания необ спецификатор-класса-памяти спецификаторы-описания необспецификатор-класса-памяти: AUTO STATIC EXTERN REGISTER TYPEDEFспецификатор-типа: CHAR SHORT INT LONG UNSIGNED FLOAT DOUBLE спецификатор-структуры-или-объединения определяющее-тип-имясписок-инициализируемых-описателей: инициализируемый-описатель инициализируемый-описатель, список-инициализируемых-описателейинициализируемый-описатель описатель-инициализатор необописатель: идентификатор (описатель) * описатель описатель () описатель [константное выражение необ] спецификатор-структуры-или-объединения: STRUCT список-описателей-структуры STRUCT идентификатор \(список-описаний-структуры\) STRUCT идентификатор UNION \(список-описаний-структуры\) UNION идентификатор \(список-описаний-структуры\) UNION идентификаторсписок-описаний-структцры: описание-структуры описание-структуры список-описаний-структурыописание структуры: спецификатор-типа список-описателей-структуры:список-описателей-структуры описатель-структуры описатель-структуры,список-описателей-структурыописатель-структуры: описатель описатель: константное выражение:константное-выражениеинициализатор: = выражение = \(список-инициализатора\) = \(список-инициализатора\)список инициализатора: выражение список-инициализатора,список-инициализатора \(список-инициализатора\)имя-типа: спецификатор-типа абстрактный-описательабстрактный-описатель: пусто \(абстрактный-описатель\) * абстрактный-описатель абстрактный-описатель () абстрактный-описатель [константное-выражение необ]определяющее-тип-имя: идентификатор

Операторы

составной-оператор: \(список-описаний список-операторов необ необ\)список-описаний: описание описание список-описанийсписок-операторов: оператор оператор список-операторовоператор: составной оператор выражение; IF (выражение) оператор IF (выражение) оператор ELSE оператор WHILE (выражение) оператор DO оператор WHILE (выражение); FOR(выражение-1;выражение-2;выражение-3) необ необ необ оператор SWITCH (выражение) оператор CASE константное-выражение: оператор DEFAULT: оператор BREAK; CONTINUE; RETURN; RETURN выражение; GOTO идентификатор; идентификатор: оператор;

26.4. Внешние определения

Программа: внешнее-определение внешнее-определение программавнешнее-определение: определение-функции определение-данныхопределение-функции: спецификатор-типа описатель-функции тело-функции необописатель-функции: описатель (список-параметров) необсписок-параметров: идетификатор идентификатор, список-параметровтело-функции: список-описаний-типа оператор-функцииоператор-функции: \(список описаний список-операторов\) необопределение данных: EXTERN спецификатор типа список необ необ инициализируемых описателей; необ STATIC спецификатор типа список необ необ инициализируемых описателей необ;

Препроцессор



Поделиться:


Последнее изменение этой страницы: 2016-08-26; просмотров: 164; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.146.255.127 (0.005 с.)