각각의 문자를 읽고 콘솔로 출력하기 위해 outer while 루프가 있다고 가정 해 보겠습니다. 또한 단어가 발견되면 플래그를 지정하고 peek 메서드를 사용하여 단어의 첫 번째 인스턴스를 찾을 수 있습니다. 앞으로 여러 장소를 들여다 볼 수있는 방법이 있습니까? 예를 들어, 내가 "월급 날"이라는 단어를 찾고 있다면. 이 문자열을 입력하고 문자열을 검색 할 수 있지만 이진 모드에서 파일을 읽고 싶어하고 외부 루프의 값을 제거하지 않으려 고합니다. 만약 내가 read 메소드로 내부 루프를 가지고 있다면, 그 값들은 외부 루프를 통해 표시되지 않습니다. 당신은 IStream을 내 주위를 뛰어 seekg 방법을 사용할 수 있습니다peek() 여러 지역 정보
감사
int main()
ifstream strm;
char *chr = new char;
strm.open("mytext.txt",ios::out | ios::binary);
while (strm.read(chr,1)
{
if (strm.peek() == 'p';
{
cout << "found a word beginning with 'p'" << endl;
//what if I want to read multiple characters ahead. Peek will read only one.
}
}
왜 동적 할당을 사용하고 있습니까? – Shoe