当我检查“ float.MaxValue”的值时,我得到:
3.402823E + 38
这是:
340,282,300,000,000,000,000,000,000,000,000,000,000,000,000
然后为什么当我尝试将较小的值设置为float变量时:
float myValue = 1234567890123456789024;
然后我收到一条错误消息:
“积分常数太大”吗?
此值比“ 3.402823E + 38”小得多,为什么为什么会出现错误?
答案 0 :(得分:3)
大多数数字类型都有一个MaxValue
字段
表示Single的最大可能值。该字段是 常数。
等同于
public const float MaxValue = 3.402823E+38;
但是,在这种情况下,您需要使用后缀f
来指定数字文字的类型,否则它将解释为整数类型(最大范围为{{1 }})。
uint64
其他资源
Value types table (C# Reference)
积分常数太大
由整数文字表示的值大于 UInt64.MaxValue。
表示UInt64的最大可能值。该字段是 常数。
float myValue = 1234567890123456789024f;