using namespace std;
string s; int n;
cin >> n;
//std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
std::getline(cin, s);
cout << n << " " << n << endl;
정수 n 입력하고
문자열 입력 안받고 바로 끝나버리는 이유가머임? 저 getline을 cin으로 받으면 상관없던데
using namespace std;
string s; int n;
cin >> n;
//std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
std::getline(cin, s);
cout << n << " " << n << endl;
정수 n 입력하고
문자열 입력 안받고 바로 끝나버리는 이유가머임? 저 getline을 cin으로 받으면 상관없던데
엔터 들어간거아님? - dc Cpp
숫자’\n’문자열에서 숫자만 n으로 들어가고 \n은 버퍼에 남아있다. 그 상태로 겟라인 쓰면 겟라인은 ‘\n’ 나올때까지 읽으니까 아무것도 안읽는거임. 그래서 이그노어로 버퍼를 지움
아 와 진짜 내가 원하는 답이다
n에 3을치면 n에 3이 들어가고 \n이 남아있고 내가 getline으로 asd 치면 \nasd\n 기때문에 \n 여기까지 읽고 뒷부분은 또 버퍼에 남는거? //asd\n
std::getline(cin, str1); //문자열 입력 std::getline(cin, str2); //문자열 입력 이런식으로 하면 상관 없는데 cin>>n; //정수 입력 std::getline(cin, str2); 은 왜 문제가 될까요?