【发布时间】:2021-03-17 11:24:05
【问题描述】:
我是一个完整的初学者,正在努力学习。
下面的代码编译得很好,在我的 Mac 版本的 Visual Studio Community 上没有任何异常。
但是,在 PC 版本中,“measurements[i] = Convert.ToDouble(Console.ReadLine());”导致“System.FormatException 错误”
我想了解一下,我认为mac版本处理异常的方式有什么不同?
mac 和 PC 项目都是 .NET 3.1 控制台应用程序。
double[] measurements = new double[3];
for(int i = 0; i < measurements.Length; i++)
{
Console.Write("Input a decimal number: ");
measurements[i] = Convert.ToDouble(Console.ReadLine());
}
【问题讨论】:
-
你说的是运行时异常还是编译时异常?运行时是在您运行应用程序时引发异常,编译时是在您构建应用程序时。
-
您为
Console.ReadLine()输入的具体字符串是什么?Convert.ToDouble()默认进行本地化解析,可能您在每台计算机上都有不同的数字本地化。请参阅:Decimal Point ignored in Convert.ToDouble。
标签: c# windows macos visual-studio exception