我使用 C# 在 .Net 3.5 中运行了一个程序,效果很好
try
{
int i = 2147483647;
Console.WriteLine((i * 100 / i).ToString());
Console.ReadLine();
}
catch (Exception)
{
throw;
}
当我在 C# 中运行这个程序时,我没有收到异常(它输出“0”)。但是当我在 VB.Net 中运行这个程序时,它会导致"Arithmetic operation resulted in an overflow"
异常
Try
Dim i As Integer = 2147483647
Console.WriteLine((i * 100 / i).ToString())
Console.ReadLine()
Catch ex As Exception
Throw
End Try
为什么这两种语言之间的行为不同?