×
Traktatov.net » Освой самостоятельно С++ за 21 день » Читать онлайн
Страница 29 из 448 Настройки

char tabCharacter = '\t';

В этом примере объявляется переменная типа char (с именем tabCharacter), которая тут же инициализируется символьным значением \t, распознаваемым как символ табуляции. Специальные символы форматирования используются при выводе информации на экран, в файл или на другое устройство вывода (например, принтер).

Символ начала управляющей последовательности изменяет значение символа, который следует за ним. Например, обычно символ n означает букву я, но когда перед ней стоит символ начала управляющей последовательности (\), то он превращается в символ разрыва строки.


Таблица 3.2. Управляющие символы.

Константы

Подобно переменным, константы представляют собой ячейки памяти, предназначенные для хранения данных. Но, в отличие от переменных, константы не изменяются (о чем говорит само название — константа). Создаваемую константу нужно инициализировать, поскольку позже ей нельзя присвоить новое значение,

В языке C++ предусмотрено два типа констант: литеральные и символьные.

Литеральные константы

Литеральная константа — это значение, непосредственно вводимое в самой программе. Например, в выражении


int myAge = 39;


myAge является переменной типа int, а число 39 — литеральной константой. Нельзя присвоить никакое значение константе 39.

Символьные константы

Символьная константа — это константа, представленная именем (точно так же, как именем представляется любая переменная). Однако, в отличие от переменной, значение инициализированной константы изменить нельзя.

Если в вашей программе есть одна целочисленная переменная с именем students, а другая — с именем classes, вы могли бы вычислить общее количество учеников школы при условии, что вам известно, сколько классов в школе и сколько учеников в каждом классе (допустим, каждый класс состоит из 15 учеников):


students = classes * 15;


Примечание:Символ (*) означает умножение.


В этом примере число 15 является литеральной константой. Но если эту литеральную константу заменить символьной, то вашу программу будет легче читать и изменять в будущем:


students = classes * studentsPerClass


Если впоследствии потребуется изменить количество учеников в каждом классе, вы сможете сделать это единожды в той строке программы, где определяется константа studentsPerClass, и вам не придется вносить изменения во все строки программы, где используется это значение.

В языке C++ существует два способа объявления символьной константы. Традиционный и ныне уже устаревший способ состоит в использовании директивы препроцессора #define.

Определение констант с помощью директивы #deiine

Для определения константы традиционным способом введите следующее выражение:


#define studentsPerClass 15


Обратите внимание на то, что константа studentsPerClass не имеет никакого конкретного типа (int, char и т.д.). Директива #define выполняет простую текстовую подстановку. Каждый раз, когда препроцессор встречает слово studentsPerClass, он заменяет его литералом 15.

Поскольку препроцессор запускается перед компилятором, последний никогда не увидит константу, а будет видеть только число 15.