C, C++和C#中的数值类型及其宽度
来源:互联网 发布:win10网络图标无法启用 编辑:程序博客网 时间:2024/06/04 00:37
整型表(C# 参考)
类型
范围
大小
sbyte
-128 到 127
有符号 8 位整数
byte
0 到 255
无符号 8 位整数
char
U+0000 到 U+ffff
16 位 Unicode 字符
short
-32,768 到 32,767
有符号 16 位整数
ushort
0 到 65,535
无符号 16 位整数
int
-2,147,483,648 到 2,147,483,647
有符号 32 位整数
uint
0 到 4,294,967,295
无符号 32 位整数
long
-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
有符号 64 位整数
ulong
0 到 18,446,744,073,709,551,615
无符号 64 位整数
如果整数表示的值超出了 ulong 的范围,将产生编译错误。
浮点型表(C# 参考)
类型
大致范围
大小
精度
float
±1.5e−45 到 ±3.4e38
32位
7 位
double
±5.0e−324 到 ±1.7e308
64位
15 到 16 位
decimal(C# 参考)
decimal 关键字表示 128 位数据类型。同浮点型相比,decimal 类型具有更高的精度和更小的范围,这使它适合于财务和货币计算。decimal 类型的大致范围和精度如下表所示。
类型
大致范围
精度
.NET Framework 类型
decimal
±1.0 × 10-28 到 ±7.9 × 1028
28 到 29 位有效位
System.Decimal
默认值表(C# 参考)
值类型
默认值
bool
false
byte
0
char
'/0'
decimal
0.0M
double
0.0D
enum
表达式 (E)0 产生的值,其中 E 为 enum 标识符。
float
0.0F
int
0
long
0L
sbyte
0
short
0
struct
将所有的值类型字段设置为默认值并将所有的引用类型字段设置为 null 时产生的值。
uint
0
ulong
0
ushort
0
内置类型表(C# 参考)
C# 类型
.NET Framework 类型
bool
System.Boolean
byte
System.Byte
sbyte
System.SByte
char
System.Char
decimal
System.Decimal
double
System.Double
float
System.Single
int
System.Int32
uint
System.UInt32
long
System.Int64
ulong
System.UInt64
object
System.Object
short
System.Int16
ushort
System.UInt16
string
System.String
Storage of Basic Types(C)
Sizes of Fundamental Types
Type
Storage
char, unsigned char, signed char
1 byte
short, unsigned short
2 bytes
int, unsigned int
4 bytes
long, unsigned long
4 bytes
float
4 bytes
double
8 bytes
long double
8 bytes
Data Type Ranges(MS C++)
For 32-bit and 64-bit compilers, Microsoft Visual C++ recognizes the types shown in the table below. Note that the following type also have unsigned forms:
- 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)
Type Name
Bytes
Other Names
Range of Values
int
4
signed
–2,147,483,648 to 2,147,483,647
unsigned int
4
unsigned
0 to 4,294,967,295
__int8
1
char
–128 to 127
unsigned __int8
1
unsigned char
0 to 255
__int16
2
short, short int, signed short int
–32,768 to 32,767
unsigned __int16
2
unsigned short, unsigned short int
0 to 65,535
__int32
4
signed, signed int, int
–2,147,483,648 to 2,147,483,647
unsigned __int32
4
unsigned, unsigned int
0 to 4,294,967,295
__int64
8
long long, signed long long
–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
unsigned __int64
8
unsigned long long
0 to 18,446,744,073,709,551,615
bool
1
none
false or true
char
1
none
–128 to 127 by default
0 to 255 when compiled with /J
signed char
1
none
–128 to 127
unsigned char
1
none
0 to 255
short
2
short int, signed short int
–32,768 to 32,767
unsigned short
2
unsigned short int
0 to 65,535
long
4
long int, signed long int
–2,147,483,648 to 2,147,483,647
unsigned long
4
unsigned long int
0 to 4,294,967,295
long long
8
none (but equivalent to __int64)
–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
unsigned long long
8
none (but equivalent to unsigned __int64)
0 to 18,446,744,073,709,551,615
enum
varies
none
See Remarks.
float
4
none
3.4E +/- 38 (7 digits)
double
8
none
1.7E +/- 308 (15 digits)
long double
same as double
none
same as double
wchar_t
2
__wchar_t
0 to 65,535
- C, C++和C#中的数值类型及其宽度
- Objective-C中的所有真值类型和数值
- C类型与数值存储
- c变量及其类型
- c中的指针数值交换
- C语言中的常量、变量及其属性,类型、存储空间
- C#中的数值类型转换注意
- C语言中的数值类型转换:整型提升/寻常算术变化/截断/强制类型转换
- [c#]遍历枚举中的项目名称和数值
- [c#]遍历枚举中的项目名称和数值
- C/C++ 内置类型的数值范围
- C语言各种数值类型转换函数
- C系基本类型数值转换
- C语言各种数值类型转换函数
- C++->string与数值类型的拼接
- C语言中数值类型转换
- C语言常用数值类型转换函数
- 关于C#中货币类型和数值类型、字符串类型的转化和在DataGridView中的显示问题:
- 程序打包之SetupFactory
- 关于JAVA中变量的初始化及类属性的默认值问题
- [Jakarta Commons] 使用LRUMap
- 2个主外键 约束 是否不起作用了??
- CSS+DIV CSS布局口诀
- C, C++和C#中的数值类型及其宽度
- Question 27: Which of the following reasons describe why a destructor cannot throw an exception in C++?
- CSS+DIV 网站优化(seo)
- CSS+DIV 推荐的 CSS 规范书写顺序
- atl中常见的模板使用手法
- 单例模式的5种实现方式
- DIV+CSS 请不要再忽悠人了
- android自定义组件
- 如何优化操作大数据量数据库(几十万以上数据)(二。改善SQL语句)