2014-10-04 84 views
1
#include <cstdio> 
int main(){ 
    float f = 12.f; 
    printf("%.2f", f); 
} 

輸出12.00C++的cout像C的printf

我怎麼能做到這一點與C++ STL使用COUT?

嘗試:

#include <iostream> 
#include <iomanip> 
#include <ios> 
using namespace std; 
int main(){ 
    float f = 12.f; 
    cout << setprecision(2) << f << endl; 
} 

回答

4

首先,你有無效的語法。 12f應該是12.f。或12.0f。其次,爲了以定點符號顯示您的號碼,請使用std::fixed。即:

#include <iostream> 
#include <iomanip> 
// <ios> header not needed 
int main() 
{ 
    float f = 12.f; 
    cout << std::fixed << std::setprecision(2) << f << endl; 
} 
+0

帶'f'後綴但沒有小數點的文字不是有效的浮點數字嗎?該死,我不知道。 – user2079303 2014-10-04 12:09:07