При написании программы на любом языке вам необходимо использовать различные переменные для хранения различной информации. Переменные — это не что иное, как зарезервированные области памяти для хранения значений. Это означает, что когда вы создаете переменную, вы резервируете некоторое пространство в памяти.
Вам может потребоваться хранить информацию различных типов данных, таких как символ, широкий символ, целое число, число с плавающей запятой, двойное число с плавающей запятой, логическое значение и т. Д. На основе типа данных переменной операционная система выделяет память и решает, что можно сохранить в зарезервированная память
Примитивные встроенные типы
C ++ предлагает программисту богатый ассортимент как встроенных, так и пользовательских типов данных. В следующей таблице перечислены семь основных типов данных C ++ —
Тип | Ключевое слово |
---|---|
логический | BOOL |
символ | голец |
целое число | ИНТ |
Плавающая запятая | поплавок |
Двойная точка с плавающей точкой | двойной |
бесполезный | недействительным |
Широкий характер | wchar_t |
Некоторые из базовых типов могут быть изменены с использованием одного или нескольких модификаторов этих типов —
- подписанный
- неподписанный
- короткая
- долго
В следующей таблице показан тип переменной, сколько памяти требуется для хранения значения в памяти, а также максимальное и минимальное значение, которое может храниться в переменных такого типа.
Тип | Типичная ширина бита | Типичный диапазон |
---|---|---|
голец | 1 байт | От -127 до 127 или от 0 до 255 |
без знака | 1 байт | От 0 до 255 |
подписанный символ | 1 байт | От -127 до 127 |
ИНТ | 4 байта | От -2147483648 до 2147483647 |
без знака int | 4 байта | От 0 до 4294967295 |
подписанный int | 4 байта | От -2147483648 до 2147483647 |
короткий int | 2bytes | От -32768 до 32767 |
беззнаковый короткий int | Спектр | От 0 до 65 535 |
подписанный короткий int | Спектр | От -32768 до 32767 |
длинный инт | 4 байта | От -2 147 483 648 до 2 147 483 647 |
подписанный длинный int | 4 байта | такой же как long int |
без знака длинный int | 4 байта | От 0 до 4 294 967 295 |
поплавок | 4 байта | +/- 3.4e +/- 38 (~ 7 цифр) |
двойной | 8bytes | +/- 1.7e +/- 308 (~ 15 цифр) |
длинный двойной | 8bytes | +/- 1.7e +/- 308 (~ 15 цифр) |
wchar_t | 2 или 4 байта | 1 широкий символ |
Размер переменных может отличаться от приведенного в таблице выше, в зависимости от компилятора и компьютера, который вы используете.
Ниже приведен пример, который даст правильный размер различных типов данных на вашем компьютере.
#include <iostream> using namespace std; int main() { cout << "Size of char : " << sizeof(char) << endl; cout << "Size of int : " << sizeof(int) << endl; cout << "Size of short int : " << sizeof(short int) << endl; cout << "Size of long int : " << sizeof(long int) << endl; cout << "Size of float : " << sizeof(float) << endl; cout << "Size of double : " << sizeof(double) << endl; cout << "Size of wchar_t : " << sizeof(wchar_t) << endl; return 0; }
В этом примере используется endl , который вставляет символ новой строки после каждой строки, а оператор << используется для передачи нескольких значений на экран. Мы также используем оператор sizeof (), чтобы получить размер различных типов данных.
Когда приведенный выше код компилируется и выполняется, он дает следующий результат, который может варьироваться от машины к машине —
Size of char : 1 Size of int : 4 Size of short int : 2 Size of long int : 4 Size of float : 4 Size of double : 8 Size of wchar_t : 4
Объявления typedef
Вы можете создать новое имя для существующего типа, используя typedef . Ниже приведен простой синтаксис для определения нового типа с помощью typedef —
typedef type newname;
Например, следующее говорит компилятору, что foot — это другое имя для int —
typedef int feet;
Теперь следующее объявление является абсолютно допустимым и создает целочисленную переменную с именем distance —
feet distance;
Перечисляемые типы
Перечислимый тип объявляет необязательное имя типа и набор из нуля или более идентификаторов, которые могут использоваться в качестве значений типа. Каждый перечислитель является константой, тип которой является перечислением.
Создание перечисления требует использования ключевого слова enum . Общая форма типа перечисления —
enum enum-name { list of names } var-list;
Здесь enum-name — это имя типа перечисления. Список имен разделен запятыми.
Например, следующий код определяет перечисление цветов, называемых цветами, и переменную c типа color. Наконец, с присваивается значение «синий».
enum color { red, green, blue } c; c = blue;
По умолчанию значение первого имени равно 0, второе имя имеет значение 1, третье — 2 и т. Д. Но вы можете дать имя, конкретное значение, добавив инициализатор. Например, в следующем перечислении зеленый цвет будет иметь значение 5.
enum color { red, green = 5, blue };
Здесь синий будет иметь значение 6, потому что каждое имя будет на одно больше, чем предыдущее.