我对C#中数字类型的丢失信息感到有些困惑.
当我这样做:
int x = 32780;
short y = (short)x;
Run Code Online (Sandbox Code Playgroud)
我有结果:-32756为y而不是预期的32767.为什么?怎么计算?
短期范围:-32768至32767范围:-2,147,483,648至2,147,483,647
当我这样做:
float x = float.MaxValue;
Run Code Online (Sandbox Code Playgroud)
我有结果:3.40282347E + 38
什么是E + 38?如果没有此符号,我该如何表示最大数字?
msdn说RANGE:±1.5×10 ^ -45到±3.4×10 ^ 38,但这对我没有帮助.