не могу настроить, чтобы выстроиться

Я не уверен, как лучше выровнять это. Я думал, используя L = name.length(); и вычитая это из setw это выстроится лучше, но нет. я имею name а также ID установить правильно, но я не могу заставить остальных выстроиться в очередь. Это floats Кстати.

for (int z=0; z<i ;z++){

if( EInfo[z].valid >0){

string name = employee[z].getName();
int L = name.length();

payReportObj << fixed << setprecision (2)  <<  endl;

payReportObj  << setw(3) << employee[z].getID()
<< setw(36)
<< employee[z].getName()
<< setw(30-L) << "$" << setw(4) << EInfo[z].grossPaySE
<< setw(25) << "$" << setw(4) << EInfo[z].taxSE
<< setw(15) << "$" << setw(4) << EInfo[z].insuranceSE
<< setw(25) << "$" << setw(4) << EInfo[z].netPaySE;

Я пытаюсь получить больше как это …
Хочу я'm trying to go for

Это то, что у меня есть … Это то, что у меня есть.

0

Решение

замещать setw(30-L) с setw(30), И это:

int L = name.length();

не нужен Если вы хотите выровнять цифры по правому краю, используйте std::right,

Похоже, что вы открыли ваш выходной файл в нодпад с пропорциональным шрифтом. Вы не увидите столбцы, выровненные пропорциональным шрифтом, даже если они есть. Измените шрифт на фиксированный или введите свой терминал type output.txt,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]