Int,Float,Double,Decimal,DateTime .etc是值类型。我知道:
Int:Represents a 32-bit signed integer.
Float:Represents a single-precision floating-point number(32-bit).
Double:Represents a double-precision floating-point number(64-bit).
...
但DateTime有多少位?为什么.NET中的所有值类型都是struct?
答案 0 :(得分:9)
基于here,DateTime代表C#中的64位:
在.NET Framework 2.0版之前,是DateTime结构 包含一个由未使用的2位字段连接组成的64位字段 使用私有Ticks字段,这是一个62位无符号字段 包含表示日期和时间的刻度数。该 可以使用Ticks属性获取Ticks字段的值。
从.NET Framework 2.0开始,DateTime结构包含 一个64位字段,由一个与之连接的私有Kind字段组成 蜱田。 Kind字段是2比特字段,指示是否 DateTime结构表示本地时间,Coordinated 世界时(UTC),或未指定时区的时间。该 在时间之间执行时间转换时使用种类字段 区域,但不是时间比较或算术。的价值 种类字段可以使用Kind属性获得。