ファイルをループしていくつかの文字を抽出した後、何個の文字が抽出されたかを知るために質問があります。最初のものが抽出されます。ここで私はこれまで試してみましたです:文字の抽出後にファイル内の特定の場所に戻る
int get_length(ifstream &inp,int &length){
int columns=0;
inp>>columns;
length++;
while(columns!=0)
{
inp>>columns;
length++;
}
if (!inp.good())
inp.clear();
inp.seekg(-length,std::ios::cur);
return length;
}
をそのバックと同じ長さを行っていないいくつかの理由、それは1で、それは間違っているなってきた、私は、それが機能Iドンを求める書き込み1で長さに追加しようとしましたここで何が間違っているのかわかりません、シーク機能を間違って使用しているのですか?
コードは余分な時間を「長さ」に増やします。 'columns'に読み込まれた値がゼロであれば、' length'をインクリメントしないでください**。 –
スキップされたスペースの数を考慮して 'length'をインクリメントしていますか? – Galik
'std :: basic_istream :: tellg()'について読んでください。 –