Float Static Cast for Division

时间:2014-05-04 04:17:37

标签: visual-c++ casting

我正在学习静态强制转换命令,所以我制作了这个简单的程序。被分割的两个数字是整数,所以我使用浮动强制转换来强制它进行浮点除法,但是当我运行程序时,结果是整数除法,小数被截断。我使用Visual C ++编写代码并使用Visual Studio 2013。 感谢您的帮助:))

void PrintAnwser(Fraction Fract)
{
using namespace std;
float Anwser = static_cast<float>(Fract.firstNumber / Fract.secondNumber);
cout << "The result of " << Fract.firstNumber << " " << "Divided by " <<Fract.secondNumber 
<< " " << "is " << Anwser << endl;
}

1 个答案:

答案 0 :(得分:1)

演员在(整数)除法完成后发生。您需要将其中一个输入转换为浮点数,以便除法将是浮点数:

float Anwser = Fract.firstNumber / static_cast<float>(Fract.secondNumber);