- 数据类型之值类型
- 数据分为两种类型:值类型和引用类型。
- 值类型是在栈中操作,而引用类型是在堆中分配存储单元。
- 内存原理:内存可以分为三大块:a堆;b栈;c静态存储区;
值类型
整数类型C#支持9种整数类型,sbyte,byte,short,ushort,int,uint,long,ulong。
类型 | 含义 | 取值范围 |
sbyte | 表示有符号的8位整数 | -128~127 |
byte | 表示无符号的8位整数 | 0~255 |
short | 表示有符号的16位整数 | -32768~32767 |
ushort | 表示无符号的16位整数 | 0~65535 |
int | 表示有符号的32位整数 | -2147483648~2147483647 |
uint | 表示无符号的32位整数 | 0~4294967295 |
long | 表示有符号的64位整数 | -9223372036854775808~9223372036854775807 |
ulong | 表示无符号的64位整数 | 0~18446744073709551615 |
(以“U"开头表示不支持负数)
浮点数类型
在我们的日常生活中不仅有整数 ,还存在小数,在C#中小数有2种数据类型来表示 (单精度)float 、(双精度)double。
他们的差别在于取值范围与精度不同,计算机对浮点数的运算速度大大低于对整数的运算速度,对double型的运算速度低于对float的运算速度,如果在程序中大量的使用双精度类浮点数,将会占用更多的内存单元,而计算机的处理任务也会更加繁重,但是用double类型的结果相对于float会更加精确,因此在对精度 要求不是很高的情况下我们可以采用float 类型。
布尔类型
只有true,false两个值。关键字为bool。
字符类型
字符类型即保存单个字符的值,字符类型的关键字是char。每个字符对象与Unicode字符集的字符对应。char类型字符变量的值是用单引号括起来的。例如‘c’。如果把字符放到双引号中,编译器会将其认为字符串,从而产生错误。
- 数据类型之引用类型