You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
helpviewer_keywords: ["specifiers [C++], type", "float keyword [C++]", "char keyword [C++]", "__wchar_t keyword [C++]", "signed types [C++], summary of data types", "Integer data type [C++], C++ data types", "arithmetic operations [C++], types", "int data type", "unsigned types [C++], summary of data types", "short data type [C++]", "double data type [C++], summary of types", "long long keyword [C++]", "long double keyword [C++]", "unsigned types [C++]", "signed types [C++]", "void keyword [C++]", "storage [C++], basic type", "integral types, C++", "wchar_t keyword [C++]", "floating-point numbers [C++], C++ data types", "long keyword [C++]", "type specifiers [C++]", "integral types", "long keyword [C++], C++ data types", "storing types [C++]", "data types [C++], void"]
5
+
helpviewer_keywords: ["specifiers [C++], type", "float keyword [C++]", "char keyword [C++]", "__wchar_t keyword [C++]", "signed types [C++], summary of data types", "Integer data type [C++], C++ data types", "arithmetic operations [C++], types", "int data type", "unsigned types [C++], summary of data types", "short data type [C++]", "double data type [C++], summary of types", "long long keyword [C++]", "long double keyword [C++]", "unsigned types [C++]", "signed types [C++]", "void keyword [C++]", "storage [C++], basic type", "integral types, C++", "wchar_t keyword [C++]", "floating-point numbers [C++], C++ data types", "long keyword [C++]", "type specifiers [C++]", "integral types", "long keyword [C++]", "storing types [C++]", "data types [C++], void"]
6
6
ms.assetid: 58b0106a-0406-4b74-a430-7cbd315c0f89
7
7
---
8
8
# Fundamental Types (C++)
@@ -28,7 +28,7 @@ The following table explains the restrictions on type sizes. These restrictions
28
28
||**short**|Type **short int** (or simply **short**) is an integral type that is larger than or equal to the size of type **char**, and shorter than or equal to the size of type **int**.<br /><br /> Objects of type **short** can be declared as **signed short** or **unsigned short**. **Signed short** is a synonym for **short**.|
29
29
||**int**|Type **int** is an integral type that is larger than or equal to the size of type **short int**, and shorter than or equal to the size of type **long**.<br /><br /> Objects of type **int** can be declared as **signed int** or **unsigned int**. **Signed int** is a synonym for **int**.|
30
30
||**__int8**, **__int16**, **__int32**, **__int64**|Sized integer `__int n`, where `n` is the size, in bits, of the integer variable. **__int8**, **__int16**, **__int32** and **__int64** are Microsoft-specific keywords. Not all types are available on all architectures. (**__int128** is not supported.)|
31
-
||**long**|Type **long** (or **long int**) is an integral type that is larger than or equal to the size of type **int**.<br /><br /> Objects of type **long** can be declared as **signed long** or **unsigned long**. **Signed long** is a synonym for **long**.|
31
+
||**long**|Type **long** (or **long int**) is an integral type that is larger than or equal to the size of type **int**. (On Windows **long** is the same size as **int**.)<br /><br /> Objects of type **long** can be declared as **signed long** or **unsigned long**. **Signed long** is a synonym for **long**.|
32
32
||**long long**|Larger than an unsigned **long**.<br /><br /> Objects of type **long long** can be declared as **signed long long** or **unsigned long long**. **signed long long** is a synonym for **long long**.|
33
33
||**wchar_t**, **__wchar_t**|A variable of type **wchar_t** designates a wide-character or multibyte character type. By default, **wchar_t** is a native type, but you can use [/Zc:wchar_t-](../build/reference/zc-wchar-t-wchar-t-is-native-type.md) to make **wchar_t** a typedef for **unsigned short**. The **__wchar_t** type is a Microsoft-specific synonym for the native **wchar_t** type.<br /><br /> Use the L prefix before a character or string literal to designate the wide-character type.|
34
34
|Floating point|**float**|Type **float** is the smallest floating point type.|
0 commit comments