可能重复:
C++ Windows Forms application unhandled exception error when textbox empty
我正在Visual Studio中为C ++课程构建温度转换应用程序。它是一个Windows窗体应用程序,我写的代码如下。当然还有其他代码,但我不确定你需要它来帮助我。
我的问题是,当我运行应用程序时,如果我没有输入txtFahrenheit或txtCelsius2文本框中的任何内容,我会收到以下错误:
“mscorlib.dll中发生了'System.FormatException'类型的未处理异常”
只有在两个文本框中输入数字时,应用程序才能正常工作。
private: System::Void btnFtoC_Click(System::Object^ sender, System::EventArgs^ e)
{
// Convert the input in the Fahrenheit textbox to a double datatype named fahrenheit for manipulation
double fahrenheit = Convert::ToDouble(txtFahrenheit->Text);
// Set the result string to F * (5/9) -32
double result = fahrenheit * .5556 - 32;
// Set the Celsius text box to display the result string
txtCelsius->Text = result.ToString();
}
private: System::Void btnCtoF_Click(System::Object^ sender, System::EventArgs^ e)
{
// Convert the input in the Celsius textbox to a double datatype name celsius for manipulation
double celsius = Convert::ToDouble(txtCelsius2->Text);
// Set the result2 string to C * (9/5) + 32
double result2 = celsius * 1.8 + 32;
// Set the Fahrenheit text box to display the result2 string
txtFahrenheit2->Text = result2.ToString();
}
答案 0 :(得分:2)
您无法将空字符串转换为Double
。
您应该使用if
语句来代替其他内容。