Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Visual_C_console.pdf
Скачиваний:
34
Добавлен:
16.05.2015
Размер:
954.14 Кб
Скачать

17

после цифры 0 записана буква х (заглавная или строчная), то следующее далее число записано в шестнадцатеричной системе счисления, например:

31 десятичное число;

031 восьмеричное число (равно десятичному числу

25);

0х31 шестнадцатеричное число (равно десятичному числу 49).

Константы, соответствующие символам управления можно задавать в апострофах, но в коде должна быть записана обратная косая черта, и буква или цифра, задающая управляющий символ. Например, символ перевода на новую строку записывают как '\n', а символ признака конца строки '\0'.

Переменные

Переменными называются величины, которые в процессе выполнения программы могут изменять свои значения. Каждая переменная имеет имя. Имя может содержать строчные и заглавные буквы латинского алфавита, символ знака подчеркивания ('_') и цифры. Первым символом не может быть цифра. В языке С++ при написании имени переменной учитывается регистр. Поэтому одно и то же имя, записанное строчными буквами и заглавными буквами, компилятор воспринимает, как разные имена.

Обычно принято заглавными буквами обозначать имена констант, задаваемых директивой #define, а имена обычных переменных строчными буквами. Если в состав имени переменной входит слово, то его желательно начинать с заглавной буквы. Длина имени не должна превышать 31 символа. В качестве имен переменных нельзя использовать ключевые слова языка С++: 'for', 'if', double и т.д.

Имя переменной может относиться к одиночной величине. Такую переменную называют скалярной. Но имя переменной может также обозначать совокупность величин. Такие переменные называются агрегатными. Некоторые агрегатные переменные имеют названия,

18

уточняющие принципы группировки величин. Например: "массив", "структура", "файл" и т.д.

Каждая скалярная переменная имеет строго определенный тип для величины, которую она представляет (целое число, указатель, число с плавающей точкой и т. д.). Агрегатные переменные могут состоять из величин одного и того же типа (массивы) или из величин разных типов (структуры, классы).

Все переменные должны быть объявлены в программе явно. Никакой тип величины для любых имен переменных по умолчанию не назначается. Транслятор языка С++ обнаруживает отсутствие объявления типа переменной и расценивает это как грубую ошибку. Это позволяет увидеть такие трудно обнаруживаемые ошибки, как описки.

Примеры объявления типов переменных:

double x, y; int n;

Вместе с объявлением можно присвоить переменной начальное значение:

int count = 0;

В языке С++ предусмотрены перечисленные ниже типы величин, каждый из которых определен ключевым словом. Ключевое слово описания типа, кроме самого типа, определяет также диапазон изменения величины, а для чисел с плавающей точкой задается также точность представления числа. В некоторых случаях для описания переменной могут применяться два и более ключевых слова, уточняющие диапазон изменения величины и/или указывающие на класс памяти (класс памяти задает либо способ хранения величины, либо место хранения).

Основные ключевые слова описания типа переменной:

int- целое число

double - число с плавающей точкой двойной точности char- символьная величина.

19

Для описания целочисленных переменных могут использоваться дополнительные ключевые слова:

long - длинное целое число unsigned - целое число без знака

Эти ключевые слова могут использоваться без основного ключевого слова int, например, записи long int и long равнозначны.

Для описания целых чисел можно использовать всего три слова: int, long и unsigned. Причем слово unsigned по умолчанию относится к слову int, а для того, чтобы переменная типа long рассматривалась как целое число без знака, следует записать unsigned long.

Для объявления символьной переменной в однобайтовой кодировке используется атрибут char, а символы в двухбайтовой кодировке объявляются с атрибутом wchar_t.

По определению символьные переменные типа char предназначены для хранения символьной информации, например, текстовой. Но эти переменные могут также рассматриваться как целые числа без знака длиной в 1 байт с диапазоном значений от 0 до 255 или как числа со знаком в диапазоне от +127 до -128, и они могут использоваться в арифметических операциях. (Для типа wchar_t соответственно 2 байта и диапазон значение от -32768 до 32767).

Целые числа типа int в старом языке С занимали 2 байта и имели диапазон значений от +32767 до -32768. В современных компьютерах эти числа занимают 4 байта и совпадают с типом long.

Целые числа типа long занимают 32 двоичных разряда (4 байта) Самый старший двоичный разряд выделен для знака числа (0 - число положительное, 1 - число отрицательное).и имеют диапазон зна-

чений от +2147483647 до -2147483648.

Целые числа без знака (тип unsigned) используют то же количество байт, что и числа типа int и long, но поскольку они рассматриваются как числа без знака, то их диапазон значений составляет 4294967295. Хотя числа типа unsigned и рассматриваются как числа без знака, однако в программе им разрешается присваивать от-

20

рицательные значения. При этом следует не забывать о последствиях, поскольку числа в компьютере представляются в виде двоичных чисел, и весь диапазон представления чисел данного типа разбивается на две части. Первая часть в самом старшем раз ряде содержит 0. Эти числа рассматриваются как положительные. Вторая часть диапазона чисел имеет в старшем разряде единицу, и эти числа рассматриваются как отрицательные (в действительности это так называемый дополнительный код числа). Из такого представления чисел следует, во-первых, что целочисленный нуль имеет различное значение для +0 (число, состоящее из одних нулей) и -0 (1 в самом старшем разряде, а остальные разряды равны 0), а, вовторых, отрицательные числа физически больше положительных. При обработке числовой информации внутри компьютера такая форма представления чисел учтена, и ошибок не возникает, но при присвоении отрицательных значений переменным, имеющим тип unsigned, этот факт вскрывается. Для переменной типа unsigned long число -1 соответствует +4294967295.

Числа типа double внутри компьютера всегда представлены в форме двоичного числа с плавающей точкой и имеют диапазон значе-

ний от -1.7Е+308 до +1.7Е+308.

Во время выполнения арифметических операций с числами с плавающей точкой возможны две ошибки: переполнение и исчезновение порядка. Переполнение, т.е. получение числа больше максимально возможного, может возникнуть, например, при делении на число, близкое к 0 (при переполнении порядок достигает значений, равных максимально возможному). При исчезновении порядка его значение становится равным минимально возможному.

Переменная может быть описана с атрибутом const, который позволяет запретить изменение значения переменной в процессе выполнения программы. Переменные, объявленные с атрибутом const, называются константными. Другими словами, если переменная записана с атрибутом const, то имя такой переменной не может появиться с левой стороны от знака равенства после объявления

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]