1Представлення long double та double – однакові. Проте, long double та double – різні типи даних.
У таблиці 2 наведено розміри базових типів даних Microsoft C++.
Таблиця 2 – Розміри базових типів даних Microsoft C++
Тип
|
Розмір |
bool |
1 byte |
char, unsigned char, signed char |
1 byte |
short, unsigned short |
2 bytes |
int, unsigned int |
4 bytes |
__intn |
8, 16, 32, 64 біт у залежності від значення n (__intn – зарезервоване слово Microsoft) |
long, unsigned long |
4 bytes |
float |
4 bytes |
double |
8 bytes |
long double |
8 bytes |
long long |
Еквівалент __int64. |
Джерело: http://msdn.microsoft.com/ru-ru/library/cc953fe1.aspx
Діапазони типів даних
32- та 64-бітні компілятори Microsoft Visual C++ розпізнають типи даних, наведені у таблиці 3. Наступні типи даних мають також беззнакові форми:
int (unsigned int)
__int8 (unsigned __int8)
__int16 (unsigned __int16)
__int32 (unsigned __int32)
__int64 (unsigned __int64)
short (unsigned short)
long (unsigned long)
long long (unsigned long long)
Таблиця 3 – Діапазони значень базових типів Microsoft Visual C++
Найменування типу |
Розмір |
Інші імена |
Діапазон значень |
int |
4 |
signed |
–2,147,483,648 до 2,147,483,647 |
unsigned int |
4 |
unsigned |
0 до 4,294,967,295 |
__int8 |
1 |
char |
–128 до 127 |
unsigned __int8 |
1 |
unsigned char |
0 до 255 |
__int16 |
2 |
short, short int, signed short int |
–32,768 до 32,767 |
unsigned __int16 |
2 |
unsigned short, unsigned short int |
0 до 65,535 |
__int32 |
4 |
signed, signed int, int |
–2,147,483,648 до 2,147,483,647 |
unsigned __int32 |
4 |
unsigned, unsigned int |
0 до 4,294,967,295 |
__int64 |
8 |
long long, signed long long |
–9,223,372,036,854,775,808 до 9,223,372,036,854,775,807 |
unsigned __int64 |
8 |
unsigned long long |
0 до 18,446,744,073,709,551,615 |
bool |
1 |
– |
false or true |
char |
1 |
– |
–128 до 127 по замовчуванню 0 до 255 якщо компілюють з ключем “/J” |
signed char |
1 |
– |
–128 до 127 |
unsigned char |
1 |
– |
0 до 255 |
short |
2 |
short int, signed short int |
–32,768 до 32,767 |
unsigned short |
2 |
unsigned short int |
0 до 65,535 |
long |
4 |
long int, signed long int |
–2,147,483,648 до 2,147,483,647 |
unsigned long |
4 |
unsigned long int |
0 до 4,294,967,295 |
long long |
8 |
– (еквівалент до __int64) |
–9,223,372,036,854,775,808 до 9,223,372,036,854,775,807 |
unsigned long long |
8 |
– (еквівалент до __int64) |
0 до 18,446,744,073,709,551,615 |
enum |
Може змінюватися |
– |
|
float |
4 |
– |
3.4E +/- 38 (7 digits) |
double |
8 |
– |
1.7E +/- 308 (15 digits) |
long double |
Те ж, що і double |
– |
Те ж, що і double |
wchar_t |
2 |
__wchar_t |
0 до 65,535 |
Джерело: http://msdn.microsoft.com/ru-ru/library/s3f49ktz.aspx
