• Несколько изменены именные пространства идентификаторов. Всем тегам структур, объединений и перечислений стандарт выделяет одно именное пространство; для меток инструкций вводится отдельное именное пространство (см. A11.1). Кроме того, имена элементов связаны со структурой или объединением, частью которого они являются. (С некоторых пор это общепринятая практика.)
• Допускается инициализация объединения; инициализатор относится к первому элементу объединения.
• Разрешается инициализация автоматических структур, объединений и массивов, хотя и с некоторыми ограничениями.
• Разрешается инициализация массива символов с помощью строкового литерала по точному количеству указанных символов (без '\0').
• Управляющее выражение и case-метки в switch могут иметь любой целочисленный тип.
Предметный указатель
0... константа восьмеричная 2.3, A2.5.1
0x... константа шестнадцатеричная 2.3, A2.5.1
... многоточие 7.3, A7.3.2
>= оператор больше или равно 2.6, A7.9
> оператор больше чем 2.6, A7.9
- оператор вычитания 2.5, A7.7
-- оператор декремента 1.5.2, 2.8, 5.5, A7.3.4, A7.4.1
/ оператор деления 1.2, 2.5, A7.6
% оператор деления по модулю 2.5, A7.6
. оператор доступа к элементу структуры 6.1, A7.3, A7.3.3
-> оператор доступа к элементу структуры через указатель 6.2, A7.3, A7.3.3
, оператор запятая 3.5, A7.18
++ оператор инкремента 1.5.2, 2.8, 5.5, A7.4, A7.4.1
* оператор косвенного доступа 5.1, A7.4.3
&& оператор логического И 1.5.4, 2.6, 2.9, A7.14
|| оператор логического ИЛИ 1.5.4, 2.6, 2.9, A7.15
! оператор логического отрицания 2.6, A7.4, A7.4.7
<= оператор меньше или равно 2.6, A7.9
< оператор меньше чем 2.6, A7.9
!= оператор неравенства 1.5.1, 2.6, A7.10
& оператор побитового И 2.9, A7.11
| оператор побитового ИЛИ 2.9, A7.13
^ оператор побитового исключающего ИЛИ 2.9, A7.12
~ оператор побитового отрицания 2.9, A7.4.6
& оператор получения адреса 5.1, A7.4.2
# оператор препроцессора 4.11.2, A12.3
## оператор препроцессора 4.11.2, A12.3
= оператор присваивания 1.5.1, 2.6, A7.17
+= оператор присваивания 2.10
== оператор равенства 1.5.3, 2.6, A7.10
<< оператор сдвига влево 2.9, A7.8
>> оператор сдвига вправо 2.9, A7.8
+ оператор сложения 2.5, A7.7
* оператор умножения 2.5, A7.6
- оператор унарный минус A7.4.5
+ оператор унарный плюс A7.4.4
" символ двойная кавычка 1.1, 1.5.3, 2.3, A2.5.2, A2.6
' символ кавычка 1.5.3, 2.3, A2.5.2
\0 символ нулевой 1.9, 2.3, A2.5.2
\\ символ обратная наклонная черта 1.1, 2.3
_ символ подчеркивания 2.1, A2.3, B
?: условное выражение 2.11, A7.16
аргументы командной строки 5.10
бесконечный цикл for( ; ; ) 3.5, 4.11.2
библиотечная функция 1.1, 4.1, 4.3, Приложение B
abort B5
abs B5
acos B4
asctime B10
asin B4
atan, atan2 7.8.6, B4
atof B5
atoi B5
atol B5
bsearch B5
calloc 7.8.5, B5
ceil B4
clearerr B1.7
clock B10
cos 7.8.6, B4
cosh B4
ctime B10
difftime B10
div B5
exit 7.6, B5
exp 7.8.6, B4
fabs 7.8.6, B4
fclose 7.5, B1.1
feof 7.6, B1.7
ferror B1.7
fflush B1.1
fgetc B1.4
fgetpos B1.6
fgets 7.7, B1.4
filecopy 7.6
floor B4
fmod B4
fopen 7.5, B1.1
fprintf 7.5, B1.2
fputc B1.4
fputs 7.7, B1.4
fread B1.5
free B5
freopen B1.1
frexp B4
fscanf 7.5, B1.3
fseek B1.6
fsetpos B1.6
ftell B1.6
fwrite B1.5
getc 7.5, B1.4
getchar 1.5, 7.1, 7.5, B1.4
getenv B5
gets B1.4
gmtime B10
isalnum 7.8.2, B2
isalpha 7.8.2, B2
iscntrl B2
isdigit 7.8.2, B2
isgraph B2
islower 7.8.2, B2
isprint B2
ispunct B2
isspace 7.8.2, B2
isupper 7.8.2, B2
isxdigit B2
labs B5
ldexp B4
ldiv B5
localtime B10
log, log10 7.8.6, B4
longjmp B8
malloc 6.5, 7.8.5, B5
memchr B3
memcmp B3
memcpy B3
memmove B3
memset B3
mktime B10
modf B4
perror B1.7
pow 7.8.6, B4
printf B1.2
putc 7.5, B1.4
putchar 1.5, 7.1, B1.4
puts 7.7, B1.4
qsort B5
raise B9
rand B5
realloc B5
remove B1.1
rename B1.1
rewind B1.6
scanf 7.4, B1.3
setbuf B1.1
setjmp B8
setvbuf B1.1
signal B9
sin 7.8.6, B4
sinh B4
sprintf 7.2, B1.2
sqrt 7.8.6, B4
srand B5
sscanf B1.3
strcat 7.8.1, B3
strchr 7.8.1, B3
strcmp 7.8.1, B3
strcpy 7.8.1, B3
strcspn B3
strerror B3
strftime B10
strlen 7.8.1, B3
strncat 7.8.1, B3
strncmp 7.8.1, B3
strncpy 7.8.1, B3
strpbrk B3
strrchr 7.8.1, B3
strspn B3
strstr B3
strtod B5
strtok B3
strtol B5
strtoul B5
system B5
tan B4
tanh B4
time B10
tmpfile B1.1
tmpnam B1.1
tolower 7.8.2, B2
toupper 7.8.2, B2
ungetc 7.8.3, B1.4
vfprintf 8.3, B1.2
vprintf 8.3, B1.2
vsprintf 8.3, B1.2
бинарное дерево 6.5
бинарный поток 7.5, B1
битовое поле
выравнивание 6.9, A8.3
объявление 6.9, A8.3
биты, образцы манипулирования 2.9, 6.9
блок см.
структура 3.1, 4.8, A9.3
инициализация в. 4.9, A9.3
буферизация см. setbuf, setvbuf
буферизованный getchar 8.2
быстрая сортировка 4.10, 5.6
ввод
без буферизации 8.2
возврат символа на 4.3
с буферизацией 8.2
с клавиатуры 1.1, 7.1, 8.1
форматный см. scanf
ввод-вывод
символов 1.5, 7.1
ошибки 7.6, B1.7
перенаправление 7.1, 7.5, 8.1
с терминала 1.5
високосный год, вычисление 2.5, 5.7
вывод на экран 1.5, 7.1, 7.5, 8.1
перенаправление 7.1
форматный см. printf
вызов
по значению 1.8, 5.2, A7.3.2
по указателю 1.8, 5.3
выравнивание битового поля
с помощью union 8.7
ограничения по 6.4, 6.5, 6.8, 7.8.5, 8.7, A6.6
выражение A7
в скобках A7.2
константное 2.3, 3.4, 4.11.3, A7.19