asmfile.txtという名前の次のファイルがあります
copy start 1000
read ldx zero
rd indev
rloop tix k100
このファイルから行ごとの入力を取得するために、次のコードを書きました....
void aviasm::crsymtab()
{
ifstream in(asmfile,ios::in);//opening the asmfile
in.seekg(0,ios::beg);
char c;
string str[3];
string subset;
long locctr=0;
int i=0;
while((c=in.get())!=EOF)
{
in.putback(c);
str[0]="";
str[1]="";
str[2]="";
while((c=in.get())!='\n')
{
in.putback(c);
in>>str[i];
i==2?i=0:i++; //limiting i to 2....
}
cout<<str[0]<<" "<<str[1]<<" "<<str[2]<<endl;
}
in.close();
}
//ここでの問題は、最初の 3 行が str に正常に入力されていることです...しかし、最後の行が str に入力されていません....コンソールでプログラムを実行すると表示されるため、これを知っています...
copy start 1000
read ldx zero
rd indev
str[0]="rd" および str[1]="indev" のため、「rd indev」のインデントが変更されます.....4 行目が str に入力されていない理由を教えてください....