2013-10-06 2 views
1

에 표시되는 소수점 앞에 제로, I 출력을 표시하려면 다음 문을 사용하고 있습니다 :방지 C++에서 C++

0.66 

가 어떻게 방지 할 수처럼

// example 
float x = 0.66004; 
cout.setf(ios::fixed); 
cout.setf(ios::showpoint); 
cout.precision(2); 
cout << x; 

내 출력이 보인다 십진수가 표시되기 전에 0이 표시됩니까? 내가 원하는 :

.66 

답변

0
std::string Foo = std::to_string(0.553); 
std::size_t it = Foo.find("."); 

if (it != std::string::npos) 
{ 
    std::cout<<Foo.erase(0, it); 
} 
+0

감사합니다. 나는 문자열 사용에 대해 생각하지 않았다. 이것에 대한 setf 수정 자의 일종이있을 것이라고 생각했습니다. – Elliott

0

한 가지 해결책은 문자열 (more 옵션)에 x 변환하고, 소수점 전에 모든 것을 차단한다.