Практически все символы, которые применяются
в языке СИ, можно разделить на пять групп:
1. Символы, которые применяются для образования ключевых слов и идентификаторов. К ним относят
прописные и строчные буквы английского алфавита и символ подчеркивания. Важно отметить, что одинаковые прописные и строчные буквы являются различными
символами, так как обладают различными кодами.
2. Прописные и строчные буквы русского алфавита
и арабские цифры.
3. Символы, образующие нумерацию, и специальные символы. Данные символы применяются для организации процесса вычислений, а также для передачи компилятору некоторого набора инструкций.
4. Управляющие и разделительные символы. К данной группе относят: пробел, символы табуляции, перевода строки, возврата каретки, новая страница и новая
строка. Подобные символы призваны отделять друг от
друга объекты, определяемые пользователем, среди которых константы и идентификаторы. Ряд разделительных символов считается компилятором как один символ
(последовательность пробелов).
5. Кроме представленных групп символов в языке
СИ широко применяются так называемые управляющие последовательности. Это специальные символьные комбинации, которые используются в функциях
ввода и вывода информации. Управляющая последовательность начинается с обратной дробной черты (\)
(обязательный первый символ) и комбинации латинских букв и цифр. Последовательности вида \ddd и \xddd (d является цифрой) дают возможность представить
символ из кода ПЭВМ как ряд восьмеричных или шестнадцатеричных цифр соответственно. К примеру, символ возврата каретки можно записать различными способами:
1) \r — общая управляющая последовательность;
2) \015 — восьмеричная управляющая последовательность;
3) \x00D — шестнадцатеричная управляющая последовательность.
Важно отметить, что в строковых константах следует задавать все три цифры в управляющей последовательности. Так, отдельную управляющую последовательность \n (переход на новую строку) можно переписать так: \010 или \xA. Однако в строковых константах
нужно задавать все три цифры, иначе символ или символы, идущие за управляющей последовательностью,
будут считаться ее недостающей частью. К примеру:
«ABCDE\x009FGH». Эта строковая команда будет напечатана с применением определенных функций языка
СИ как два слова ABCDE FGH, между которыми располагаются 8 пробелов. Если указать неполную управляющую строку «ABCDE\x09FGH», то на печати появится ABCDE=|=GH, вследствие того, что компилятор
воспримет последовательность \x09F как символ
«=+=». Важно отметить, что если обратная дробная черта предшествует символу, не являющемуся управляющей последовательностью (т. е. не включенному в табл.
4) и не являющемуся цифрой, то данная черта не учитывается, а символ представляется как литеральный.