명품 C++ programming 11장 실습문제 3번(모르겠음)


명품 C++ programming 11장 실습문제 3번(모르겠음)

문제 한 줄에 '영어문장;한글문자' 형식으로 키 입력될 때, cin.ignore()를 이용하여 ';' 이후에 입력된 문자열을 화면에 출력하는 프로그램을 작성하라. 아래에서 ^Z(ctrl-z) 키는 입력 종료는 나타내는 키이며, cin.get()은 EOF를 리턴한다. 실행 결과 : 내가 짠 코드 #include<iostream>using namespace std;int main() { int ch; cin.ignore(100, ';'); // 영어 문장이 최대 99개의 문자로 입력된다고 가정한다. while ((ch = cin.get()) != EOF) { cout.put(ch); if (ch == '\n') cin.ignore(100, ';'); // 영어 문장이 최대 99개의 문자로 입력된다고 가정한다. }} 왜 cin.ignore()가 두 번 들어가는 지 모르겠음...



원문링크 : 명품 C++ programming 11장 실습문제 3번(모르겠음)