미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
split 부분에서 input.find(delimiter)의 값에 대한 궁금증 입니다!
큰돌님 안녕하세요! C++ 교안을 공부하다가 split 부분에서 궁금한 것이 생겨서 질문 드립니다!
while((pos=input.find(delimiter)) != string::npos){
cout << input.find(delimiter) << "\n";
token = input.substr(0, pos);
ret.push_back(token);
input.erase(0, pos+delimiter.length());
}
이 함수에서 find 반환값이 궁금해 cout로 출력을 시켜봤습니다.
예상대로는 "안녕하세요 큰돌이는 바보에요 정말이에요!" 문자열의 스페이스 index인 5, 4, 4가 나와야할 것 같았는데
두배인 10, 8, 8이 출력이 되었고 다른 컴파일러를 사용했을 때는 세배인 15, 12, 12 출력 되었습니다.
혹시 이렇게 배수로 출력되는 이유가 따로 있는지 궁금합니다!