텍스트 문서에 내용을 쓰고 단어를 추출한 다음 인쇄하려고합니다.하지만 그럴 경우 제외 할 단어를 인쇄합니다. 첫 번째 단어, 그럼 무한히 "\ 377"밖으로 인쇄 시작이 제대로 닫지 않는 파일과 관련이 있다고 생각하지만 제대로 닫는 방법을 모르겠다, 내 자기 C + +를 가르치고 난 그냥이 물건을 발견 내 자신의하지만이 날 혼란스러워했다. 나는 문자 문서에 S, D, T라는 글자를 쓰려고 시도하고있다. 그런 다음 그 글자들을 각각 문자열로 저장하여 출력한다.C++ 텍스트 파일을 읽는 중, 377이 무한히 인쇄되기 시작합니다.
//
// main.cpp
// test prep
//
// Created by Sylvain Jones on 2/10/14.
//
#include <iostream>
#include <fstream>
using namespace std;
void makeFile() {
fstream outfile("file.txt", fstream::out);
outfile << "S S D T 0";
outfile.close();
}
void readFile() {
ifstream file;
file.open("file.txt");
string word;
char x ;
word.clear();
int score, runners = 0;
int srunners[100];
while (file >> word) {
x = file.get();
while (x != 0) {
word = word + x;
x = file.get();
cout << x << endl;
if (x == ' ') {
if (word == "S") {
score = score + 1;
runners++;
srunners[runners] += 1;
}
else {
if (word == "D") {
score = score + 2;
runners++;
srunners[runners] += 2;
}
else {
if (word == "T") {
score = score + 3;
runners++;
srunners[runners] += 3;
}
}
}
}
}
}
}
int main(int argc, const char * argv[])
{
makeFile();
cout << "file made\n\n";
readFile();
}
파일의 끝에 도달하면'file.get()'이 반환하는 것은 무엇이라고 생각하십니까? – Barmar
"저작권 (c) 2014 실뱅 존스. 판권 소유." SO에 게시 된 코드에 대해서는 부적절합니다. 모든 SO 콘텐츠는 CC 라이선스가 있어야하며 다른 콘텐츠가 게시되지 않도록하는 것은 사용자의 몫입니다. 이 페이지까지 스크롤하여 자세한 내용에 대한 링크가있는 "기여가 필요한 cc by-sa 3.0 라이선스가있는 사용자 기여도"를 참조하십시오. – hvd
xcode를 사용하면 자동으로 거기에 넣습니다. –