ファイルポインタに問題があります。何らかの理由で私はそれを横断させて、すべての単語をdocument.txtに出力する方法を見つけることができません。それがないすべてが出力にも、非常に最初の1をスキップし、同じ単語別名同じ変数の内容である。(したがって、それは何度も何度も出力2番目の単語を希望し、トラバース後に停止します)ファイルのトラバースを拒否する...同じ変数の内容を出力し続ける
#include <iterator>
#include <algorithm>
#include <vector>
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
vector<string> myVector;
vector<string>::iterator it;
ifstream docFile("document.txt");
string inputline;
getline(docFile, inputline);
string word;
while(!docFile.eof())
{
int i = 1;
docFile >> word;
myVector.push_back(word);
cout<<myVector[i]<<endl;
// char c = getc(docFile);
// if(c == '\n')
// ++linecount;
// cout<<linecount<<endl;
++i;
}
}
コメントコード各行を横断するたびに行数を増やそうとしているだけです。当初
1ループの外で宣言し、0に初期化する必要が
i
、バグを修正し、しないように。タイプミスとしてクローズする投票。 – dasblinkenlight
最初の単語は、それを消費する 'getline'呼び出しのために失われます。 – dasblinkenlight
ファンタジーコードではなく、実際のコードをランダムな部分を削除して投稿してください。これは、無関係なコードを大量に投稿する必要はないことに注意してください。あなたの質問を編集し、完全に作成されたコードを[mcve]に置き換えてください。 –