Можно ли сдавать один и тот же тест несколько раз? |
Простые типы данных
Типы данных
Тип данных назначается объекту данных при его объявлении и определяет: значения, которые может принимать объект данного типа; операции, которые используются для манипуляции над объектами заданного типа.
Современные языки программирования, как правило, могут иметь набор простых типов, являющихся встроенными в данный язык программирования, и средства для создания производных типов.
Объектно-ориентированные языки программирования позволяют определять типы класса.
Реализация простых типов данных заключается в способе представления значений данного типа в компьютере и в наборе операций, поддерживаемых для данного типа.
Типы данных языка C++
Тип данных определяет размер памяти, выделяемой под переменную данного типа при ее создании.
C++ поддерживает следующие типы данных:
- базовые типы. Базовые типы указываются зарезервированными ключевыми словами, и их не надо определять.
- производные типы. Переменные этих типов создаются как с использованием базовых типов, так и типов классов. Это структуры, объединения, указатели, массивы.
- типы класса. Экземпляры этих типов называются объектами.
Базовые типы языка C++ можно подразделить на две группы: целочисленные и вещественные. Существует еще ключевое слово void, которое используется для описания типа подпрограмм, не имеющих возвращаемого значения, или при указании параметров подпрограмм неизвестного типа.
char signed char |
Символьный тип. Диапазон значений от -128 до 127. Содержит один символ или строку символов. Каждый символ представляется одним байтом. Компилятор различает как отдельные следующие типы: char, signed char и unsigned char. |
unsigned char |
Символьный тип. Диапазон значений от 0 до 255. Каждый символ представляется одним байтом (значение в диапазоне от 0 до 255). |
short signed short |
Целый тип. Диапазон значений от -32768 до 32767. Сокращенное обозначение типа short int. Длина этого типа вне зависимости от используемого компилятора всегда больше или равна длине значения типа char и меньше или равна длине значения типа int. |
unsigned short | Беззнаковый целый тип. Диапазон значений от 0 до 65535. |
int signed int |
Целый тип. Диапазон значений от -2147483648 до 2147483647. Длина этого типа вне зависимости от используемого компилятора всегда больше или равна длине значения типа short int. В общем случае размер типа int языка C++ зависит от конкретной реализации. |
unsigned int | Беззнаковый целый тип. Диапазон значений от 0 до 4294967295. |
__intn | Целый тип, размер в битах которого определяется значением n, и может быть равным 8, 16, 32 или 64 битам. |
long signed long |
Целый тип. Диапазон значений от -2147483648 до 2147483647. Сокращенное обозначение типа long int. |
unsigned long | Беззнаковый целый тип. Диапазон значений от 0 до 4294967295 |
float | Тип данных с плавающей точкой. Диапазон значений от 3.4Е-38 до 3.4Е+38. |
double |
Тип данных с плавающей точкой двойной точности. Диапазон значений от 1.7Е-308 до 1.7Е+308. Длина типа double вне зависимости от используемого компилятора всегда больше или равна длине типа float и короче или равна длине типа long double. |
long double |
Тип данных с плавающей точкой двойной точности, длина которого равна длине значений типа double. Типы double и long double имеют одинаковое представление, но компилятор трактует их как различные типы. |
Размер памяти, выделяемой под каждый тип данных языка C\C++, в некотором смысле зависит от используемой платформы и компилятора. Однако все компиляторы гарантируют, что для типа short памяти всегда выделяется меньше или столько же, сколько и для типа int, а тип long всегда "длиннее" или равен типу int.
Символьные типы char и unsigned char представляют значение символа, реализуемое одним байтом. Для использования символов в кодировке Unicode язык C++ предоставляет тип wchar_t, в котором под каждый символ отводятся два байта.
Ключевое слово typedef языка C++ позволяет объявить новое имя существующего типа.
Например:
typedef int my_integer; my_integer i1=0;
Создание псевдонима для типа значительно облегчает процесс изменения типа переменных в уже отлаженном коде.
Символьным литералом или символьной константой называется символ, заключенный в одинарные кавычки. Целые литералы представляют целочисленные константы в десятичном, восьмеричном или шестнадцатеричном виде.
Восьмеричные литералы начинаются с символа 0, а шестнадцатеричные - с символов 0x.
После литерала может быть указан суффикс, определяющий его тип: U - unsigned int, L - long int.
Например:
00 // Восьмеричное значение, равное 0 oxffff // Шестнадцатеричное значение, // равное 65535 10L // Значение типа long int
При записи шестнадцатеричных литералов каждый знак может принимать значение от 0 до 15. Для записи значений от 10 до 15 принято использовать следующие символы: a - 10, b - 11, c - 12, d - 13, e - 14 и f - 15.
Литералы с плавающей точкой могут записываться в двух формах: вещественной и экспоненциальной.
Например:
1.53 32.24e-12 // Экспоненциальная форма записи литерала
Литералы с плавающей точкой могут использоваться для инициализации значений переменных вещественного типа ( float, double или long double ).