Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Справочник по С++.doc
Скачиваний:
49
Добавлен:
02.05.2014
Размер:
995.33 Кб
Скачать

R.2.3 Идентификаторы

Идентификатор - это последовательность букв и цифр произвольной длины. Первый символ должен быть буквой, символ подчеркивания _ считается буквой. Прописные и строчные буквы различаются. Все символы существенны.

R.2.4 Служебные слова

Перечисленные ниже идентификаторы фиксируются как служебные слова и в другом смысле не могут использоваться: asm continue float new signed try auto default for operator sizeof typedef break delete friend private static union case do goto protected struct unsigned catch double if public switch virtual char else inline register template void class enum int return this volatile const extern long short throw while В дополнение к этому идентификаторы, содержащие двойное подчеркивание (__) резервируются для реализаций С++ и стандартных библиотек и пользователи не должны употреблять их. В представлении программы на С++ в кодировке ASCII используются в качестве операций или разделителей следующие символы: ! % ^ & * ( ) - + = { } | ~ [ ] \ ; ' : " < > ? , . / а следующие комбинации символов используются для задания операций: -> ++ -- .* ->* << >> <= >= == != && || *= /= %= += -= <<= >>= &= ^= |= :: Каждая операция считается отдельной лексемой. В дополнении к этому следующие символы резервируются для препроцессора: # ## Определенные, зависящие от реализации, свойства, такие как тип операции sizeof ($$R5.3.2) или диапазоны базовых типов ($$R.3.6.1) определяются в стандартных заголовочных файлах ($$R.16.4) <float.h> <limits.h> <stddef.h> Эти файлы являются частью ANSI стандарта для С. Кроме того заголовочные файлы <new.h> <stdarg.h> <stdlib.h> определяют типы самых важных библиотечных функций. Два последних файла входят в ANSI стандарт для С, файл <new.h> относится только к С++.

R.2.5 Литералы

Есть несколько видов литералов (часто называемых "константами"). литерал: целая константа символьная константа константа с плавающей точкой строка литералов

R.2.5.1 Целые константы

Все целые константы, состоящие из последовательности цифр, считаются десятичными (основание счисления десять), если только они не начинаются с 0 (цифра ноль). Последовательность цифр, начинающаяся с 0, считается восьмеричным целым (основание счисления восемь). Цифры 8 и 9 не являются восьмеричными. Последовательность цифр, начинающаяся с 0x или 0X, считается шестнадцатеричным целым (основание счисления шестнадцать). Шестандцатеричные цифры могут состоять из символов от a или A до f или F с десятичными значениями их от десяти до пятнадцати. Например, число двенадцать можно записать как 12, 014 или 0XC. Тип целой константы определяется ее представлением, значением и окончанием. Если она десятичная и не имеет окончания, ее тип будет первым подходящим для ее значения из следующих типов: 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, lu, uL, Lu, Ul, lU, UL или LU, ее типом будет unsigned long int.