아래 프로그램에서 파일의 각 줄을 문자열로 읽고 문자열을 분석하여 개별 단어를 표시하려고합니다. 문제는 프로그램 이제 파일의 첫 번째 행만 출력합니다. 왜 이런 일이 일어나는지 이해가 안되니?프로그램에서 getline과 strtok를 함께 사용할 때의 문제
#include<iostream>
#include<string>
#include<fstream>
#include<cstdio>
using namespace std;
int main()
{
ifstream InputFile("hello.txt") ;
string store ;
char * token;
while(getline(InputFile,store))
{
cout<<as<<endl;
token = strtok(&store[0]," ");
cout<<token;
while(token!=NULL)
{
token = strtok(NULL," ");
cout<<token<<" ";
}
}
}
동의 : OP의 실제 사용 사례가 질문 (공백으로 분리)에서 제시된 것처럼 단순하다면 문자열 스트림은 매우 좋은 아이디어입니다. –