数据类型范围
Microsoft C++ 32 位和 64 位编译器可识别本文后面的表中的类型。 - int (unsigned int) - __int8 (unsigned __int8) - __int16 (unsigned __int16) - __int32 (unsigned __int32) -
Microsoft C++ 32 位和 64 位编译器可识别本文后面的表中的类型。
- 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)
如果其名称以两条下划线 (__) 开始,则数据类型是非标准的。
下表中指定的范围均包含起始值和结束值。
类型名称
字节
其他名称
值的范围
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
.- .
-32,768 到 32,767
unsigned __int16
2
%>
0 到 65,535
__int32
4
.- .
-2,147,483,648 到 2,147,483,647
unsigned __int32
4
%>
0 到 4,294,967,295
__int64
8
%>
-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 或 true
char
1
无
-128 到 127(默认) 0 到 255(在通过使用 /J 进行编译时)
signed char
1
无
-128 到 127
unsigned char
1
无
0 到 255
short
2
%>
-32,768 到 32,767
unsigned short
2
unsigned short int
0 到 65,535
long
4
%>
-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
无(但与 unsigned __int64 等效)
0 到 18,446,744,073,709,551,615
enum
多种多样
无
float
4
无
3.4E +/- 38(七位数字)
double
8
无
1.7E +/- 308(15 位数字)
long double
与 double 相同
无
与 double 相同
wchar_t
2
__wchar_t
0 到 65,535
__wchar_t 的变量指定宽字符类型或多字节字符类型。 在字符或字符串常量前使用 L 前缀以指定宽字符类型常量。
signed 和 unsigned 是可用于任何整型( bool除外)的修饰符。 请注意,对于重载和模板等机制而言,char、signed char 和 unsigned char 是三种不同的类型。
int 和 unsigned int 类型的大小为 4 个字节。 但是,由于语言标准允许可移植代码特定于实现,因此该代码不应依赖于 int 的大小。
Visual Studio 中的 C/C++ 还支持按大小分类的整型。 有关详细信息,请参阅 __int8, __int16, __int32, __int64 和整数限制。
有关每个类型的大小限制的详细信息,请参阅内置类型。
枚举类型的范围因语言上下文和指定的编译器标志而异。 有关详细信息,请参阅 C 枚举声明 和 枚举。
另请参阅
关键字
内置类型