Pregunta

In C++, I'm using the following statements to display output:

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

My output looks like

0.66

How can I prevent the zero before the decimal from being displayed? I want:

.66
¿Fue útil?

Solución

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);
}

Otros consejos

One possible solution is converting x to string (more options) and cut off everything before the decimal.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top