2013-03-05 39 views
2

我有這樣的功能:分期付款 - 浮動錯誤C2296

float ObliczRate(float fKwotaKredytu, float fOprocentowanie, int iIloscRat) 
{ 
    /* 
    Rata = K * y^n * (y-1)/(y^n-1); 

    y = 1 + (r/12) 
    */ 

    float fRata, float fY; 

    fY = 1 + (fOprocentowanie/12); // obliczanie stałej kredytu 
    fRata = fKwotaKredytu * fY^iIloscRat * (fY - 1)/(fY^iIloscRat - 1); // obliczanie raty stałej ze wzoru 

    return fRata; 
} 

,我有錯誤: 「錯誤C2296: '^':非法,左操作數的類型是 '浮動'」 只在「(FY^iIloscRat - 1)「。這有什麼問題?

+0

波蘭語評論。哦,是的。 – 2013-03-05 08:47:49

回答

5

這是因爲^而不是一個指數運算符,而是按位異或運算符。你想要std::pow功能。

+0

謝謝Joachim :) – Saibamen 2013-03-05 11:14:26

2

在C++中,運算符^具有按位異或算子的含義,而不是功率操作。您將不得不使用cmath標題中定義的pow函數。

2

在C++中,您必須使用函數pow來執行電源操作。

簽名看起來是這樣的:

float pow(float base, float exp); 

你可以找到它here