Главная · Поиск книг · Поступления книг · Top 40 · Форумы · Ссылки · Читатели

Настройка текста
Перенос строк


    Прохождения игр    
Demon's Souls |#13| Storm King
Demon's Souls |#12| Old Monk & Old Hero
Demon's Souls |#11| Мaneater part 2
Demon's Souls |#10| Мaneater (part 1)

Другие игры...


liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня
Rambler's Top100
Образование - Керниган, Ричи Весь текст 454.51 Kb

Язык Си

Предыдущая страница
1 ... 32 33 34 35 36 37 38  39
      ==  !=
      &
      \^
      \!
      &&
    \!\!
      ?:

Все операции присваивания имеют одинаковый приоритет и груп-
пируются справа налево.
Операции присваивания:
  =  +=  -=  *=  ?=  %=  >>=  <<=  &=  \^=  \!=

Операция запятая имеет самый низкий приоритет и группируется
слева направо.

     26.2. Описания

Описание:
спецификаторы-описания список-инициализируемых-описателей
        необ;
---------------------------------------------------------------------------

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

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

спецификатор-структуры-или-объединения:
   STRUCT список-описателей-структуры
   STRUCT идентификатор \(список-описаний-структуры\)
   STRUCT идентификатор
   UNION \(список-описаний-структуры\)
   UNION идентификатор \(список-описаний-структуры\)
   UNION идентификатор
список-описаний-структцры:
   описание-структуры
   описание-структуры список-описаний-структуры
описание структуры:
   спецификатор-типа список-описателей-структуры:
список-описателей-структуры
   описатель-структуры
   описатель-структуры,список-описателей-структуры
описатель-структуры:
   описатель
   описатель: константное выражение
   :константное-выражение
инициализатор:
   = выражение
   = \(список-инициализатора\)
   = \(список-инициализатора\)
список инициализатора:
   выражение
   список-инициализатора,список-инициализатора
   \(список-инициализатора\)
имя-типа:
   спецификатор-типа абстрактный-описатель
абстрактный-описатель:
   пусто
   \(абстрактный-описатель\)
   * абстрактный-описатель
   абстрактный-описатель ()
   абстрактный-описатель [константное-выражение
            необ]
определяющее-тип-имя:
  идентификатор

     26.3. Операторы

составной-оператор:
  \(список-описаний      список-операторов
        необ      необ\)
список-описаний:
  описание
  описание список-описаний
список-операторов:
  оператор
  оператор список-операторов
оператор:
  составной оператор
  выражение;

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

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

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

     26.5. Препроцессор

#DEFINE идентификатор строка-лексем
#DEFINE
#DEFINE идентификатор(идентификатор,...,идентификатор)стр
#UNDEF идентификатор
#INCLUDE "имя-файла"
#INCLUDE <имя-файла>
#IF константное-выражение
#IFDEF идентификатор
#IFNDEF идентификатор
#ELSE
#ENDIF
#LINE константа идентификатор

     Последние изменения языка "C" (15 ноября 1978 г.)

    27. Присваивание структуры
    Структуры могут быть присвоены, переданы функциям в ка-
честве аргументов и возвращены функциям. Типы участвующих
операндов должны оставаться теми же самыми. Другие правдопо-
добные операторы, такие как сравнение на равенство, не были
реализованы.
    В реализации возвращения структур функциями на PDP-11
имеется коварный дефект: если во время возврата происходит
прерывание и та же самая функция пеентерабельно вызывается
во время этого прерывания, то значение возвращаемое из пер-
вого вызова, может быть испорчено. Эта трудность может воз-
никнуть только при наличии истинного прерывания, как из опе-
рационной системы, так и из программы пользователя, прерыва-
ния, которое существенно для использования сигналов; обычные
рекурсивные вызовы совершенно безопасны.
    28. Тип перечисления
    Введен новый тип данных,аналогичный скалярным типам язы-
ка паскаль. К спецификатору-типа в его синтаксическом описа-
нии в разделе 8.2. Приложения а следует добавить

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

с синтаксисом

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

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

перечисляемое
---------------------------------------------------------------------------

список-перечисления, перечисляемое
-------------------  -------------
перечисляемое:
---------------------------------------------------------------------------

  идентификатор
 -------------
 идентификатор = константное выражение
 -------------   ---------------------

    Роль идентификатора в спецификаторе-перечисления пол-
ностью аналогична роли ярлыка структуры в спецификато-
ре-структуры; идентификатор обозначает определенное перечис-
ление. Например, описание

 ENUM COLOR \(RED, WHITE, BLACK, BLUE \);
 . . .
 ENUM COLOR *CP, COL;

Объявляет идентификатор COLOR ярлыком перечисления типа,
описывающего различные цвета и затем объявляет CP указателем
на объект этого типа, а COL - объектом этого типа.
    Идентификаторы в списке-перечисления описываются как
константы и могут появиться там, где требуются (по контекс-
ту) константы. Если не используется вторая форма перечисляе-
мого (с равеством =), то величины констант начинаются с 0 и
возрастают на 1 в соответствии с прочтением их описания сле-
ва на право. Перечисляемое с присвоением = придает соответс-
твующему идентификатору указанную величину; последующие
идентификаторы продолжают прогрессию от приписанной величи-
ны.
    Все ярлыки перечисления и константы могут быть различны-
ми и непохожими на ярлыки и члены структур даже при условии
использования одного и того же множества идентификаторов.
    Объекты данного типа перечисления рассматриваются как
объекты, имеющие тип, отличный от любых типов и контролирую-
щая программа LINT сообщает об ошибках несоответствия типов.
В реализации на PDP-11 со всеми перечисляемыми переменными
оперируют так, как если бы они имели тип INT.
    29. Таблица изображений непечатных символов языка "C".
    В данной таблице приведены изображения некоторых симво-
лов (фигурные скобки и т.д.) языка "C", которых может не
оказаться в знаковом наборе дисплея или печатающего устройс-
тва.
---------------------------------------------------------------------------

!    Значение          !   Изображение   **     !
!                      !    В тексте            !
---------------------------------------------------------------------------

!  Фигурная открывающаяся  !                    !
!    Скобка                !        \(          !
!                          !                    !
---------------------------------------------------------------------------

!  Фигурная закрывающаяся  !                    !
!    Скобка                !        \)          !
!                          !                    !
---------------------------------------------------------------------------

! Вертикальная             !                    !
!    Черта                 !        \!          !
!                          !                    !
---------------------------------------------------------------------------

!                          !                    !
!   Апостороф              !        \'          !
!                          !                    !
---------------------------------------------------------------------------

!    Волнистая             !                    !
!      Черта               !        \^          !
!                          !                    !
---------------------------------------------------------------------------

    ** П_р_и_м_е_ч_а_н_и_е:
    Изображения приведены для операционой системы UNIX. При
работе компилятора "C" под управлением любой другой операци-
онной системы, необходимо воспользоваться соответствующим
руководством для данной системы.
Предыдущая страница
1 ... 32 33 34 35 36 37 38  39
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 
Комментарии (1)

Реклама