이 포스트에서는 cin 입력 버퍼를 비우고 초기화하는 방법에 대해 다루고 있습니다. 적절한 설명을 위해 프로그래밍 문제 사이트 백준 Online Judge(BOJ)의 4458번 : '첫 글자를 대문자로' 문제의 풀이 코드를 함께 활용하도록 하겠습니다. 먼저 중요한 차이부터 설명드리겠습니다. 예를 들어 문자열을 한 줄씩 반복해서 받을 때, 개행 문자 '\n'가 마지막에 남아있기 때문에 이를 비우기 위해서 일반적으로 cin.clear()를 사용해왔는데, clear 함수는 사실은 입력 버퍼를 비우는 것이 아닌, stream을 good state로 돌려주는 함수라고 합니다. 따라서 버퍼를 명확히 비우기 위해서는 ignore 함수를 사용하는 것이 더 정확합니다. 이 때 cin.ignore()로 사용하면 문자 한 ..