だから私は質問がある。私は整数のペアを読みたい(最初のものは係数、2番目のものは指数です)、これらのペアはそれぞれリンクリストのノードです。私は入力されたテキストファイルに改行またはキーを見るまでリンクされたリストにこれらのペアを設定し続けます。テキスト入力ファイルの改行まで整数のペアを読む
入力ファイルは読んだ後、それは二つの異なる多項式になるだろう
-1 0 6 2 3 2 5 6 1 6
2 5 3 2 4 2 5 7 2 7
ようになりますので、それは、再び起動します次の行、すなわち
多項式1 =
-1 + 6x^2 + 3x^2 + 5x^6 + x^6
多項式2 =
2x^5 + 3x^2 + 4x^2 + 5x^7 + 2x^7
または2つの異なるリンクリストを各多項式に1つずつ割り当てます。私はちょうどそれは両方のラインを読んで、本当に長い単一の多項式を作ってあげる
while (infile >> coefficient >> exponent)
{
polynomialA.listInsert(coefficient, exponent);
}
のように使用している場合、現在の方法は、私はそれを持っているので。
編集:申し訳ありませんが、私は不明でした。質問は、テキストファイル内の改行文字に達するまで、ifstreamがintgersのペアを読み続けるようにする方法でした。もちろんstd::getline
std::string line;
std::getline(infile, line) //Read the whole line
{
std::stringstream ss(line);
while(ss >> coefficient >> exponent) //read the pairs
polynomialA.listInsert(coefficient, exponent);
}
std::getline(infile, line) //read another whole line
{
std::stringstream ss(line);
while(ss >> coefficient >> exponent) //read the pairs
polynomialB.listInsert(coefficient, exponent);
}
、上記より良い方法で記述することができますと一緒に使用std::stringstream
、しかし、私はあなたにそれを残します:ヒント:
良い。あなたの質問は何ですか? –
申し訳ありませんが、私は不明であったと思います。テキストファイル内の改行文字に達するまで、ifstreamがintgersのペアを読み続けるようにする方法を知りたかっただけです。 – user2444400