Средства С99/С11, которых нет в С++11
Хотя традиционно считается, что язык С в большей или меньшей степени является подмножеством C++, в стандарте С99 появились некоторые средства, отсутствующие в C++. Ниже перечислены наиболее заметные из них:
• назначенные инициализаторы;
• составные инициализаторы;
• ограниченные указатели;
• массивы переменной длины;
• гибкие элементы массивов;
• макросы с переменным количеством аргументов.
На заметку!
Приведенный список — это просто моментальный снимок на конкретный момент, и перечни разделяемых и неразделяемых возможностей продолжат видоизменяться. Например, в
С++14 добавится средство, подобное массивам переменной длины С99.
В
Набор символов
ASCII
918 Приложение В
С
имволы сохраняются в памяти компьютеров с использованием числовых кодов.
В США наиболее часто применяется кодировка ASCII (American Standard Code for Information Interchange — американский стандартный код для обмена информацией). Язык С позволяет представить большинство одиночных символов напрямую путем заключения символа в одинарные кавычки, например, 'А' для символа A. Кроме того, одиночный символ можно представить с использованием его восьмеричного или шестнадцатеричного кода, перед которым должна находиться обратная косая черта, например, ‘\012 ' и '\0ха' соответствуют символу перевода строки (LF). Управляющие последовательности подобного рода также могут быть частью строки, скажем, такой: "Добро пожаловать, \012уважаемый".
В представленной ниже таблице символ Л, применяемый как префикс, обозначает клавишу .

Набор символов ASCII 919

920 Приложение В

Набор символов ASCII 921


Предметный указатель

Предметный указатель 923

924 Предметный указатель

Предметный указатель 925
926 предметный указатель

Факториал, 344
Флаг, 261
Функция, 40; 326; 384 assert(), 704 atexit(), 698 calloc(), 514 exit(), 698 fclose(), 540 feof(), 553 ferror(), 553 fflush(), 550 fgetpos(), 548 fgets(), 432; 544 fopen(), 537 fprintf(), 542 fputs(), 432; 441; 544 fread(), 551; 553 free(), 513 fscanf(), 542 fseek(), 544 fsetpos(), 548 ftell(), 544
fwrite(), 551; 552; 553 getc(), 538 get_choice(), 318 gets(), 430; 432 gets_s(), 436 itobs(), 640 main(), 56 memcpyO, 707 memmove(), 707 mycompO, 702 printf(), 442 putc(), 538 puts(), 440 qsort(), 700; 702 rand0.c, 502 scanf(), 438 setvbuf(), 550 s_gets(), 437 sprintf(), 459 strcat(), 446 strcmpO, 449; 452; 454 strcpy(), 454; 456 strlen(), 445 strncat(), 447 strncpyO, 454; 458 ungetc(), 549 ввода-вывода, 129
для работы с широкими символами, 889 внешняя, 501
встраиваемая, 688; 916
вызов функции, 54; 67
генерации случайных чисел, 502
заголовок функции, 63
механизм прототипирования функций, 363
объявление функции, 67
определение функции, 67
прототип функции, 189; 328; 339
рекурсия, 341
с аргументами, 188
статическая, 501
строковая, 445; 879
ц
Центральный процессор (ЦП), 30; 31
Цикл
do while, 226 for, 216
while, 159; 200; 205 бесконечный, 174; 206 вложенный, 230 неопределенный, 215 со счетчиком, 215 с постусловием, 226
ч
Число
вещественное, 83 восьмеричное, 87 комплексное, 849; 909 мантисса (значащая часть числа), 101 с плавающей запятой, 83; 100 факториал целого числа, 344 форма записи научная, 100 экспоненциальная, 100 целое, 82 двоичное, 629 со знаком, 629
целочисленное переполнение, 89 шестнадцатеричное, 87
ш
Шаблон, 568
я
Язык C++, 30 ассемблер, 27 машинный, 31 синтаксис языка, 73