3

入力ファイルストリームと次のように宣言された文字列があります。

std::ifstream finput;
std::string tmp_string;

を使用して繰り返し行を読み取りますstd::getline(finput, tmp_string);

問題は、ストリーム ポインタを巻き戻して、その後 の 2 番目の呼び出しがstd::getline(finput, tmp_string);同じ結果を返すようにする方法です (1 ステップ前と同じ)。

4

1 に答える 1

5

行を読んでからでは手遅れです。記憶していない位置に戻ることはできません。これが必要な場合の唯一の解決策は、 のfinput.gtell()前にを呼び出しgetline、返されたものをシークすることです。

于 2012-09-18T11:43:14.720 に答える