내 C++ 프로그램을 컴파일하고 난에서이 함수를 호출 할 때까지 작동) (주 :"프로그램에서 발생하는 액세스 위반 (Segmentation Fault)."
이int uword(){fstream infile("numbers.txt");
fstream exfile("wordlist.txt");
string numb[numoflines];
string lines[numoflines];
number = 1;
line = 1;
for(int i=0;i<numofline;++i)
{
getline (infile,number);
numb[i] = number; //I think this is causing the problem
getline (exfile,line);
lines[i] = line; //This too
}
infile.close();
exfile.close();
string yourword;
뭔가 여기가 제기 액세스 위반 (분할 오류) "로 팝업 디버그에, 그것은 충돌을 일으 킵니다 당신의 프로그램. "
편집 : 내 실수는 for 루프에! infile.eof를 사용하는 것입니다.
입력 루프가 잘못되었습니다. GMan은 [C++ FAQ 질문 중 하나에 대한 답변]에서 입력을 적절히 처리하는 방법에 대한 좋은 설명을주었습니다 (http://stackoverflow.com/questions/4258887/semantics-of-flags-on-basic-ios/4259111# 4259111). –
! infile.eof()를 i <= numoflines로 변경하면 (동일한 작업을 수행해야 함) 여전히 오류가 발생합니다. 제 생각에 그것은 당신이 당신의 언급을 의미했던 것입니다. – Mark
당신은 i