enum
extern
float
for
goto
if
int
long
register
return
short
signed
sizeof
static
struct
switch
typedef
union
unsigned
void
volatile
while
В некоторых реализациях резервируются также слова fortran и asm.
Ключевые слова const, signed и volatile впервые появились в стандарте ANSI; enum и void - новые по отношению к первому изданию книги, но уже использовались; ранее зарезервированное entry нигде не использовалось и поэтому более не резервируется.
A2.5. Константы
Существует несколько видов констант. Каждая имеет свой тип данных; базовые типы рассматриваются в A4.2.
константа:
целая-константа
символьная-константа
константа-с-плавающей-точкой
константа-перечисление
A2.5.1. Целые константы
Целая константа, состоящая из последовательности цифр, воспринимается как восьмеричная, если она начинается с 0 (цифры нуль), и как десятичная в противном случае. Восьмеричная константа не содержит цифр 8 и 9. Последовательность цифр, перед которой стоят 0x или 0X, рассматривается как шестнадцатеричное целое. В шестнадцатеричные цифры включены буквы от a (или A) до f (или F) co значениями от 10 до 15.
Целая константа может быть записана с буквой-суффиксом u (или U) для спецификации ее как беззнаковой константы. Она также может быть с буквой- суффиксом l (или L) для указания, что она имеет тип long.
Тип целой константы зависит от ее вида, значения и суффикса (о типах см. A4). Если константа - десятичная и не имеет суффикса, то она принимает первый из следующих типов, который годится для представления ее значения: int, long int, unsigned long int. Восьмеричная или шестнадцатеричная константа без суффикса принимает первый возможный из типов: int, unsigned int, long int, unsigned long int. Если константа имеет суффикс u или U, то она принимает первый возможный из типов: unsigned int, unsigned long int. Если константа имеет суффикс l или L, то она принимает первый возможный из типов: long int, unsigned long int. Если константа имеет суффикс ul или UL, то она принимает тип unsigned long int.
Типы целых констант получили существенное развитие в сравнении с первой редакцией языка, в которой большие целые имели просто тип long. Суффиксы U и u введены впервые.
A2.5.2. Символьные константы
Символьная константа - это последовательность из одной или нескольких символов, заключенная в одиночные кавычки (например 'x'). Если внутри одиночных кавычек расположен один символ, значением константы является числовое значение этого символа в кодировке, принятой на данной машине. Значение константы с несколькими символами зависит от реализации.
Символьная константа не может содержать в себе одиночную кавычку ' или символ новой строки; чтобы изобразить их и некоторые другие символы, могут быть использованы эскейп-последовательности:
новая строка (newline, linefeed) | NL (LF) | \n |
горизонтальная табуляция (horizontal tab) | HT | \t |
вертикальная табуляция (vertical tab) | VT | \v |
возврат на шаг (backspace) | BS | \b |
возврат каретки (carriage return) | CR | \r |
перевод страницы (formfeed) | FF | \f |
сигнал звонок (audible alert, bell) | BEL | \a |
обратная наклонная черта (backslash) | \ | \\ |
знак вопроса (question mark) | ? | \? |
одиночная кавычка (single quote) | ' | \' |
двойная кавычка (double quote) | " | \" |
восьмеричный код (octal number) | ooo | \ooo |
шестнадцатеричный код (hex number) | hh | \xhh |