-
cin.ignore() - cin, getline 동시에 사용할 때C++ 2021. 7. 6. 03:20
위에서 cin으로 정수 등 입력 받고 나서 getline으로 한 줄 string 입력 받을 때
바로 개행문자가 들어가버려서 입력 불가한 경우 cin.ignore() 사용해서 버퍼 비워주기
#include<iostream> #include<string> using namespace std; int main() { int n; cin >> n; // 정수형 변수 n에는 입력한 숫자만 저장되고, \n은 버퍼에 그대로 남음 string s; getline(cin, s); // 새로 입력하기도 전에 위에서 입력하고 남은 \n이 들어와버림 cin >> n; // cin.ignore()를 통해 입력 버퍼를 비우면 해결 가능 cin.ignore(); getline(cin, s); }
'C++' 카테고리의 다른 글
map (0) 2021.07.11 입출력 조작자 (Manipulator) (0) 2021.07.11 stoi() - string to int (0) 2021.07.06 pair, vector (0) 2021.07.06 stack (0) 2021.06.01