КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
|
|
|
| ►
|
|
|
|
|
| @
|
| P
|
| `
|
| p
|
| ☺
|
| ◄
|
| !
|
|
|
| A
|
| Q
|
| a
|
| q
|
| ☻
|
| ↕
|
| "
|
|
|
| B
|
| R
|
| b
|
| r
|
| ♥
|
| ‼
|
| #
|
|
|
| C
|
| S
|
| c
|
| s
|
| ♦
|
| ¶
|
| $
|
|
|
| D
|
| T
|
| d
|
| t
|
| ♣
|
| §
|
| %
|
|
|
| E
|
| U
|
| e
|
| u
|
| ♠
|
| ▬
|
| &
|
|
|
| F
|
| V
|
| f
|
| v
|
| •
|
| ↨
|
| '
|
|
|
| G
|
| W
|
| g
|
| w
|
| ◘
|
| ↑
|
| (
|
|
|
| H
|
| X
|
| h
|
| x
|
| ○
|
| ↓
|
| )
|
|
|
| I
|
| Y
|
| i
|
| y
|
| ◙
|
| →
|
| *
|
| :
|
| J
|
| Z
|
| j
|
| z
|
| ♂
|
| ←
|
| +
|
| ;
|
| K
|
| [
|
| k
|
| {
|
| ♀
|
| ∟
|
| ,
|
| <
|
| L
|
| \
|
| l
|
| |
|
| ♪
|
| ↔
|
| -
|
| =
|
| M
|
| ]
|
| m
|
| }
|
| ♫
|
| ▲
|
| .
|
| >
|
| N
|
| ^
|
| n
|
| ~
|
| ☼
|
| ▼
|
| /
|
| ?
|
| O
|
| _
|
| o
|
| ⌂
|
Некоторые из вышеперечисленных символов имеют особый смысл. Так, например, символ с кодом 9 обозначает символ горизонтальной табуляции, символ с кодом 10 – символ перевода строки, символ с кодом 13 – символ возврата каретки.
Дополнительная часть таблицы символов
КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
| КС
| С
|
| А
|
| Р
|
| а
|
| ░
|
| └
|
| ╨
|
| р
|
| Ё
|
| Б
|
| С
|
| б
|
| ▒
|
| ┴
|
| ╤
|
| с
|
| ё
|
| В
|
| Т
|
| в
|
| ▓
|
| ┬
|
| ╥
|
| т
|
| Є
|
| Г
|
| У
|
| г
|
| │
|
| ├
|
| ╙
|
| у
|
| є
|
| Д
|
| Ф
|
| д
|
| ┤
|
| ─
|
| ╘
|
| ф
|
| Ї
|
| Е
|
| Х
|
| е
|
| ╡
|
| ┼
|
| ╒
|
| х
|
| ї
|
| Ж
|
| Ц
|
| ж
|
| ╢
|
| ╞
|
| ╓
|
| ц
|
| Ў
|
| З
|
| Ч
|
| з
|
| ╖
|
| ╟
|
| ╫
|
| ч
|
| ў
|
| И
|
| Ш
|
| и
|
| ╕
|
| ╚
|
| ╪
|
| ш
|
| °
|
| Й
|
| Щ
|
| й
|
| ╣
|
| ╔
|
| ┘
|
| щ
|
| ∙
|
| К
|
| Ъ
|
| к
|
| ║
|
| ╩
|
| ┌
|
| ъ
|
| ·
|
| Л
|
| Ы
|
| л
|
| ╗
|
| ╦
|
| █
|
| ы
|
| √
|
| М
|
| Ь
|
| м
|
| ╝
|
| ╠
|
| ▄
|
| ь
|
| №
|
| Н
|
| Э
|
| н
|
| ╜
|
| ═
|
| ▌
|
| э
|
| ¤
|
| О
|
| Ю
|
| о
|
| ╛
|
| ╬
|
| ▐
|
| ю
|
| ■
|
| П
|
| Я
|
| п
|
| ┐
|
| ╧
|
| ▀
|
| я
|
|
|
В таблицах обозначение КС означает "код символа", а С – "символ".
Приложение 2
Операции языка Си
Операции приведены в порядке убывания приоритета. Операции с разными приоритетами разделены чертой.
Операция
| Краткое описание
| Использование
| Порядок
выполнения
|
Унарные операции
|
.
| Доступ к члену
| объект. член
| Слева
направо
|
->
| Доступ к члену по указателю
| указатель -> член
|
[]
| Индексирование
| переменная [ выражение ]
|
()
| Вызов функции
| ID(список_выр.)
|
++
| Постфиксный инкремент
| lvalue ++
| Справа
налево
|
--
| Постфиксный декремент
| lvalue --
|
sizeof
| Размер объекта или типа
| sizeof(выражение или тип)
|
++
| Префиксный инкремент
| ++ lvalue
|
--
| Префиксный декремент
| -- lvalue
|
~
| Побитовое НЕ
| ~ выражение
|
!
| Логическое НЕ
| ! выражение
|
-
| Унарный минус
| - выражение
|
+
| Унарный плюс
| + выражение
|
*
| Раскрытие указателя
| * выражение
|
&
| Адрес
| & выражение
|
()
| Приведение типа
| (тип) выражение
|
Бинарные и тернарная операции
|
*
| Умножение
| выражение * выражение
| Слева
направо
|
/
| Деление
| выражение / выражение
|
%
| Получение остатка
| выражение % выражение
|
+
| Сложение
| выражение + выражение
|
-
| Вычитание
| выражение – выражение
|
<<
| Сдвиг влево
| выражение << выражение
|
>>
| Сдвиг вправо
| выражение >> выражение
|
<
| Меньше
| выражение < выражение
|
<=
| Меньше или равно
| выражение <= выражение
|
>
| Больше
| выражение > выражение
|
>=
| Больше или равно
| выражение >= выражение
|
==
| Равно
| выражение == выражение
|
!=
| Не равно
| выражение!= выражение
|
&
| Побитовое И
| выражение & выражение
|
^
| Побитовое исключающее ИЛИ
| выражение ^ выражение
|
|
| Побитовое ИЛИ
| выражение | выражение
|
&&
| Логическое И
| выражение && выражение
|
||
| Логическое ИЛИ
| выражение || выражение
|
?:
| Условная операция (тернарная)
| выражение? выражение: выражение
|
Операция
| Краткое описание
| Использование
| Порядок
выполнения
|
=
| Присваивание
| lvalue = выражение
| Справа
налево
|
*=
| Умножение с присваиванием
| lvalue *= выражение
|
/=
| Деление с присваиванием
| lvalue /= выражение
|
%=
| Остаток от деления с присваиванием
| lvalue %= выражение
|
+=
| Сложение с присваиванием
| lvalue += выражение
|
-=
| Вычитание с присваиванием
| lvalue -= выражение
|
<<=
| Сдвиг влево с присваиванием
| lvalue <<= выражение
|
>>=
| Сдвиг вправо с присваиванием
| lvalue >>= выражение
|
&=
| Поразрядное И с присваиванием
| lvalue &= выражение
|
|=
| Поразрядное ИЛИ с присваиванием
| lvalue |= выражение
|
^=
| Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ с присваиванием
| lvalue ^= выражение
|
,
| Последовательное вычисление
| выражение, выражение
| Слева
направо
|
Приложение 3
Возможности препроцессора и его вызов
Препроцессор, как мы уже знаем, это программа предварительной обработки исходного текста программы перед этапом компиляции. Чаще всего препроцессор автоматически вызывается на этапе компиляции, если в исходном тексте обнаружена хотя бы одна его директива.
Напомним, что признаком директивы препроцессора является символ # (обычно в начале строки). При необходимости продолжения директивы в следующей строке, текущую строку должен завершать символ '\'.
Возможности препроцессора языка C:
- лексемное замещение идентификаторов;
- макрозамещение;
- включение файлов исходного текста;
- условная компиляция;
- изменение нумерации строк и текущего имени файла.