"Мюррэй Хилл, Бьярн Страустрап. Язык С++" - читать интересную книгу автора

2.3 Типы

Каждое имя (идентификатор) в C++ программе имеет ассоциированный
с ним тип. Этот тип определяет, какие операции можно применять к
имени (то есть к объекту, на который оно ссылается), и как эти
операции интерпретируются. Например:

int error number;
float real(complex* p);

Поскольку error_number описано как int, его можно присваивать,
использовать в арифметических выражениях и т.д. Тогда как функция
real может вызываться с адресом complex в качестве параметра. Можно
взять адрес любого из них. Некоторые имена, вроде int и complex,
являются именами типов. Обычно имя типа используется в описании для
спецификации другого имени. Единственные отличные от этого действия
над именем типа - это sizeof (для определения количества памяти,
которая требуется для хранения объекта типа) и new (для размещения
объекта типа в свободной памяти). Например:

main()
{
int* p = new int;
cout << "sizeof(int) = " << sizeof(int) "\n";
}

Имя типа можно также использовать для задания явного
преобразования одного типа в другой, например:

float f;
char* p;
//...
long ll = long(p); // преобразует p в long
int i = int(f); // преобразует f в int

2.3.1 Основные Типы

В C++ есть набор основных типов, которые соответствуют наиболее
общим основным единицам памяти компьютера и наиболее общим основным
способам их использования:

char
short int
int
long int

- стр 53 -

для представления целых различных размеров,