日期:2014-05-18  浏览次数:20485 次

各位高手进来看看,一个溢出问题,跟大家探讨一下。
Integer   x   =   2147483647;

System.Math.Min(System.Threading.Interlocked.Increment(x),   x   -   1)

以上代码出现溢出异常。

但,按照以下写法就没有异常发生:
integer   j   ;
Integer   x   =   2147483647;

j=System.Threading.Interlocked.Increment(x)
System.Math.Min(j,   x   -   1)

望各位高手能解释下原因否?

谢谢~~~~



------解决方案--------------------
超出了整型的最大值了,改为folat或者double类型
folat x = 2147483647;
------解决方案--------------------
晕死,这不是耍我们吗?在C#里边都是好的