私の出力はわずかにずれています。今、私の出力は次のようになります。
Is this correct??
My Project works!!!!
*************** I don't know
次のようにする必要があります。
Is this correct???
My Project works!!!!!
****************I don't know
null 文字/スペースが 3 行すべてを台無しにしており、この場合に null を無視する方法がわかりません。
私の入力ファイルは次のようになります。
63-27.8 18spaces L Is this correct
33fill 21b5 l My Project works
42??? 28-09ng5 R I don't know
ここに私のコードがあります:
#include <iostream>
#include <string>
#include <fstream>
#include <iomanip>
using namespace std;
int main()
{
string filename;
int a, b, c; // ASCII values for fill character
int aw, bw, cw; // width values for setwidth
char ch1, ch2, ch3; // character for right or left justification
string s1, s2, s3; // strings
ifstream inData;
cout << "please enter the location of the file you wish to input: " << endl;
getline(cin, filename);
inData.open(filename.c_str());
inData >> a;
inData.ignore(100, ' ');
inData >> aw;
inData.ignore(100, ' ');
inData >> ch1;
getline(inData, s1);
inData >> b;
inData.ignore(100, ' ');
inData >> bw;
inData.ignore(100, ' ');
inData >> ch2;
getline(inData, s2);
inData >> c;
inData.ignore(100, ' ');
inData >> cw;
inData.ignore(100, ' ');
inData >> ch3;
getline(inData, s3);
{
if (ch1 == 'l' || ch1 == 'L')
cout << left;
else if (ch1 == 'r' || ch1 == 'R')
cout << right;
else
cout << "error" << endl;
}
cout << setw(aw) << setfill(char(a)) << s1 << endl;
{
if (ch2 == 'l' || ch2 == 'L')
cout << left;
else if (ch2 == 'r' || ch2 == 'R')
cout << right;
else
cout << "error" << endl;
}
cout << setw(bw) << setfill(char(b)) << s2 << endl;
{
if (ch3 == 'l' || ch3 == 'L')
cout << left;
else if (ch3 == 'r' || ch3 == 'R')
cout << right;
else
cout << "error" << endl;
}
cout << setw(cw) << setfill(char(c)) << s3 << endl;
return 0;
}
この問題をどのように修正しますか?