Обрабатываемые в программе данные можно разделить на переменные и константы. Перед использованием переменные и константы должны быть объявлены с помощью оператора объявления вида
[<Спецификатор класса памяти>][модификатор const] <спецификатор
типа> <идентификатор> [=<начальное значение>|( начальное
значение)][, <идентификатор> [=<начальное значение>|( начальное
значение)]] . . .;
Например:
int a = 5, y, z(10);
const float g = 9.81, c = 0.577216;
Ключевое слово const указывает, что записанные справа идентификаторы являются символическими константами (константными переменными). При этом значение константы задается обязательно и в программе изменяться не может. Кроме константных переменных, константы могут задаваться в виде литеральных (самоопределенных) констант (см 1.5).
В таблице 1.2 приведены имена основных скалярных базовых типов, диапазоны допустимых значений и размер памяти, отводимой под элементы хранения переменных и констант данных типов. Для явного задания диапазона можно использовать модификаторы signed, unsigned.
Таблица 1.2 Характеристики основных типов данных С++
Имя типа |
Размер в байтах(16/32 разрядная архитектура) |
Диапазон значений |
[signed] char |
1 / 1 |
-128 .. 127 |
unsigned char |
1 / 1 |
0..255 |
[signed] short |
2 / 2 |
-32768..32767 |
unsigned short |
2 / 4 |
0..65535 |
[signed] int |
2 / 4 |
-32768..32767 |
unsigned int |
2 / 4 |
0..65535 |
[signed] long |
4 / 4 |
-2147483648..2147483647 |
unsigned long |
4 / 4 |
0..4294967295 |
float |
4 / 4 |
3.4 Е–38..3.4 Е+38 |
double |
8 / 8 |
1.7 Е–308..1.7 Е+308 |
long double |
10 / 10 |
3.4 Е–4932..3.4 Е+4932 |
По способу определения константы можно разделить на символические и литеральные (самоопределенные).
Литеральная константа представляет собой константу, тип и значение которой определяются ее внешним видом. Различают следующие виды литеральных констант: числовые, символьные, строковые.
Числовые константы:
· вещественные типа double: 3.14, 0.314E1, -2.5
· целые:
· десятичные типа int: 0, 278, -579 – используются десятичные цифры;
· восьмеричные: 00, 077777 – используются восьмеричные цифры, запись числа начинается с нуля;
· шестнадцатиричные: 0х0000, 0х7FFF – используются шестнадцатиричные цифры, запись числа начинается с 0х.
Тип числовой константы можно явно задать с помощью суффиксов
L, l – long int, например, 35L;
uh, uh, UH, hu, Hu, HU - unsigned short , например, 27 UH;
f, F – float, например, 1.5 F;
l,L – long double, например, 1E–10L.
Символьные константы:
· клавиатурные: ‘1’, ‘t’, ‘Y’ – клавиатурный символ задается в апострофах;
· кодовые – для задания некоторых управляющих и разделительных символов:
‘\n’, ‘\t’, ‘\\’, ‘\’’, ‘\”’
· кодовые числовые – для задания любых ASCII-кодов символов, имеют вид:
‘\xHH’, ‘\XHH’, ‘\0OOO’, где H,O шестнадцатиричная и восьмеричная цифры соответственно.
Строковые константы – последовательности символов, ограниченные двойными кавычками.
Для задания строковой константы требуется n+1 байтов, где n – число символов между ограничителями строковой константы. Дополнительный байт последний и требуется для хранения кода 000, который записывается автоматически.
Символические константы базовых типов объявляются так же, как и переменные соответствующих типов, но с указанием модификатора const. Например,
const int x = 5; y = 10;
const double z = 1E-5;
const float PI = 3.141593;
const char Smb = ‘t’;
const char SC[] = “String constant”;
Символические константы можно задавать также средствами препроцессора.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.