2015-05-21 3 views
1

я следующий код для форматирования распечатки, чтобы всегда быть 4 цифры со знаком включен:Как я могу заставить знак появляться в конце заполнения при использовании std :: cout и std :: stringstream?

std::stringstream pitch; 
pitch.precision(0); 

pitch.width(4); 
pitch.fill('0'); 

pitch << std::showpos << (int)(m_values["Pitch_1"]); 

Я хотел бы также, чтобы показать знак («+»/«-»), но я хочу, чтобы это предшествуют заливку следующим образом:

+002 

Однако код я здесь перемещает знак «+» в старшем разряде:

00+2 

как, если это возможно, я могу чан e форматирование, чтобы у меня было первое, а не последнее?

ответ

6

Используйте std::internal манипулятором:

pitch << std::internal << std::showpos << 5;