KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » Брайан Керниган - Язык программирования Си. Издание 3-е, исправленное

Брайан Керниган - Язык программирования Си. Издание 3-е, исправленное

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Брайан Керниган, "Язык программирования Си. Издание 3-е, исправленное" бесплатно, без регистрации.
Перейти на страницу:

внешнее-объявление:

    определение-функции

    объявление

определение функции:

    спецификаторы-объявлениянеоб объявитель

    список-объявленийнеоб составная-инструкция

объявление:

    спецификаторы-объявления список-инициализаторов-объявителейнеоб

список-объявлений:

    объявление

    список-объявлений объявление

спецификаторы-объявления:

    спецификатор-класса-памяти спецификаторы-объявлениянеоб

    спецификатор-типа спецификаторы-объявлениянеоб

    квалификатор-типа спецификаторы-объявлениянеоб

спецификатор-класса-памяти: один из

    auto     register     static     extern     typedef

спецификатор-типа: один из

    void char short int long float double signed unsigned

    спецификатор-структуры-или-объединения

    спецификатор-перечисления

    typedef-имя

квалификатор-типа: один из

    const    volatile

спецификатор-структуры-или-объединения:

    структуры-или-объединения-идентификаторнеоб { список-объявлений-структуры }

    структуры-или-объединения идентификатор

структура-или-объединение: одно из

    struct   union

список-объявлений-структуры:

    объявление-структуры

    список-объявлений-структуры объявление-структуры

список-объявителей-ииициализаторов:

    объявитель-инициализатор

    список-объявителей-инициализаторов , объявитель-инициализатор

объявитель-инициализатор:

    объявитель

    объявитель = инициализатор

объявление-структуры:

    список-спецификаторов-квалификаторов список-объявителей-структуры

список-спецификаторов-квалификаторов:

    спецификатор-типа список-спецификаторов-квалификаторовнеоб

    квалификатор-типа список-спецификаторов-квалификаторовнеоб

список-структуры-объявителей:

    структуры–объявитель

    список-структуры-объявителей , структуры-объявитель

структуры-объявитель:

    объявитель

    объявительнеоб : константное-выражение

спецификатор-перечисления:

    enum идентификаторнеоб { список-перечислителей }

    enum идентификатор

список-перечислителей:

    перечислитель

    список-перечислителей перечислитель

перечислитель:

    идентификатор

    указательнеоб собственно-объявитель

собственно-объявитель:

    идентификатор

    ( объявитель )

    собственно-объявитель [ константное-выражениенеоб ]

    собственно-объявитель ( список-типов-параметров )

    собственно-объявитель ( список-идентификаторовнеоб )

указатель:

    * список~квалификаторов-типанеоб

    * список-квалификаторов-типанеоб указатель

список-квалификаторов-типа:

    квалификатор-типа

    список-квалификаторов-типа квалификатор-типа

список-типов-параметров:

    список-параметров

    список-параметров , ...

список-параметров:

    объявление-параметра

    список-параметров , объявление-параметра

объявление-параметра:

    спецификаторы-объявления объявитель

    спецификаторы-объявления абстрактный-объявительнеоб

список-идентификаторов:

    идентификатор

    список-идентификаторов , идентификатор

инициализатор:

    выражение-присваивания

    { список-инициализаторов }

    { список-инициализаторов, }

список-инициализаторов:

    инициализатор

    список-инициализаторов , инициализатор

имя-типа:

    список-спецификаторое-квалификаторов абстрактный-объявительнеоб

абстрактный-объявитель:

    указатель

    указательнеоб собственно-абстрактный-объявитель

собственно-абстрактный-объявитель:

    ( абстрактный-объявитель )

    собственно-абстрактный-объявительнеоб [константное-выражениенеоб]

    собственно-абстрактный-объявительнеоб (список-типов-параметровнеоб)

typedef-имя:

    идентификатор

инструкция:

    помеченная-инструкция

    инструкция–выражение

    составная-инструкция

    инструкция-выбора

    циклическая-инструкция

    инструкция-перехода

помеченная-инструкция:

    идентификатор : инструкция

    case константное-выражение : инструкция

    default : инструкция

инструкция-выражение:

    выражениенеоб;

составная-инструкция:

    ( список-объявленийнеоб список-инструкцийнеоб)

список-инструкций:

    инструкция

    список-инструкций инструкция

инструкция-выбора:

    if ( выражение ) инструкция

    if ( выражение ) инструкция else инструкция

    switch ( выражение ) инструкция

циклическая-инструкция:

    while ( выражение ) инструкция

    do инструкция while ( выражение )

    return выражениенеоб;

выражение:

    выражение-присваивания

    выражение , выражение-присваивания

выражение-присваивания:

    условное-выражение

    унарное-выражение оператор-присваивания выражение-присваивания

оператор-присваивания: один из

    =   *=   /=   %=   +=   -=   <<=   >>=   &=   ^=   |=

условное-выражение:

    логическое-ИЛИ-выражение

    логическое-ИЛИ-выражение ? выражение : условное-выражение

константное-выражение:

    условное-выражение

логическое-ИЛИ-выражение:

    логическое-И-выражение

    логическое-ИЛИ-выражение || логическое-И-выражение

логическое-И-выражение:

    ИЛИ-выражение

    логическое-И-выражение && ИЛИ-выражение

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*