Стандартная часть таблицы символов ascii
КС | С | КС | С | КС | С | КС | С | КС | С | КС | С | КС | С | КС | С |
► | @ | 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 – символ возврата каретки.
Дополнительная часть таблицы символов
КС | С | КС | С | КС | С | КС | С | КС | С | КС | С | КС | С | КС | С |
А | Р | а | ░ | └ | ╨ | р | Ё | ||||||||
Б | С | б | ▒ | ┴ | ╤ | с | ё | ||||||||
В | Т | в | ▓ | ┬ | ╥ | т | Є | ||||||||
Г | У | г | │ | ├ | ╙ | у | є | ||||||||
Д | Ф | д | ┤ | ─ | ╘ | ф | Ї | ||||||||
Е | Х | е | ╡ | ┼ | ╒ | х | ї | ||||||||
Ж | Ц | ж | ╢ | ╞ | ╓ | ц | Ў | ||||||||
З | Ч | з | ╖ | ╟ | ╫ | ч | ў | ||||||||
И | Ш | и | ╕ | ╚ | ╪ | ш | ° | ||||||||
Й | Щ | й | ╣ | ╔ | ┘ | щ | ∙ | ||||||||
К | Ъ | к | ║ | ╩ | ┌ | ъ | · | ||||||||
Л | Ы | л | ╗ | ╦ | █ | ы | √ | ||||||||
М | Ь | м | ╝ | ╠ | ▄ | ь | № | ||||||||
Н | Э | н | ╜ | ═ | ▌ | э | ¤ | ||||||||
О | Ю | о | ╛ | ╬ | ▐ | ю | ■ | ||||||||
П | Я | п | ┐ | ╧ | ▀ | я |
В таблицах обозначение КС означает «код символа», а С – «символ».
Операции языка Си
Операции приведены в порядке убывания приоритета, операции с разными приоритетами разделены чертой.
Операция | Краткое описание | Использование | Порядок выполнения |
Первичные (унарные) операции | |||
. | Доступ к члену | объект . член | Слева направо |
-> | Доступ по указателю | указатель -> член | |
[ ] | Индексирование | переменная [выражение] | |
( ) | Вызов функции | ID_функции(список) | |
Унарные операции | |||
++ | Постфиксный инкремент | lvalue++ | Справа налево |
-- | Постфиксный декремент | lvalue-- | |
sizeof | Размер объекта (типа) | sizeof(ID или тип) | |
++ | Префиксный инкремент | ++lvalue | |
-- | Префиксный декремент | --lvalue | |
~ | Побитовое НЕ | ~выражение | |
! | Логическое НЕ | !выражение | |
– (+) | Унарный минус (плюс) | – (+)выражение | |
* | Разадресация | *выражение | |
& | Адрес | &выражение | |
() | Приведение типа | (тип)выражение | |
Бинарные и тернарная операции | |||
* | Умножение | выражение * выражение | Слева направо |
/ | Деление | выражение / выражение | |
% | Получение остатка | выражение % выражение | |
+ | Сложение | выражение + выражение | |
– | Вычитание | выражение – выражение | |
<< | Сдвиг влево | выражение << выражение | |
>> | Сдвиг вправо | выражение >> выражение | |
< | Меньше | выражение < выражение | |
<= | Меньше или равно | выражение <= выражение | |
> | Больше | выражение > выражение | |
>= | Больше или равно | выражение >= выражение | |
== | Равно | выражение == выражение | |
!= | Не равно | выражение != выражение | |
& | Побитовое И | выражение & выражение | |
^ | Побитовое исключ. ИЛИ | выражение ^ выражение |
Операция | Краткое описание | Использование | Порядок выполнения |
| | Побитовое ИЛИ | выражение | выражение | Слева направо |
&& | Логическое И | выражение && выражение | |
|| | Логическое ИЛИ | выражение || выражение | |
?: | Условная операция (тернарная) | выражение ? выражение : выражение | Справа налево |
= | Присваивание | lvalue = выражение | |
*= | Умножение с присваиванием | lvalue *= выражение | |
/= | Деление с присваиванием | lvalue /= выражение | |
%= | Остаток от деления с присваиванием | lvalue %= выражение | |
+= | Сложение с присваиванием | lvalue += выражение | |
- = | Вычитание с присваиванием | lvalue -= выражение | |
<<= | Сдвиг влево с присваиванием | lvalue <<= выражение | |
>>= | Сдвиг вправо с присваиванием | lvalue >>= выражение | |
&= | Поразрядное И с присваиванием | lvalue &= выражение | |
|= | Поразрядное ИЛИ с присваиванием | lvalue |= выражение | |
^= | Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ с присваиванием | lvalue ^= выражение | |
, | Последовательное вычисление | выражение, выражение | Слева направо |
Возможности препроцессора
Препроцессор, как мы уже знаем, это программа предварительной обработки исходного текста программы перед этапом компиляции. Чаще всего препроцессор автоматически вызывается на этапе компиляции, если в исходном тексте обнаружена хотя бы одна его директива.
Признаком директивы препроцессора является символ #. При необходимости продолжения директивы в следующей строке текущую строку должен завершать символ '\'.
Возможности препроцессора языка Cи:
– лексемное замещение идентификаторов;
– макрозамещение;
– включение файлов исходного текста;
– условная компиляция;
– изменение нумерации строк и текущего имени файла.