를 건너 뛰는 /, 도와주세요 : D프로그램의 getline()/C++
0
A
답변
1
cin>>Choice;
잎 입력 버퍼 내의 말미의 개행 캐릭터 그리고 getline(cin,title);
therfore 빈 줄을 읽습니다.
일반적으로 형식이 지정된 입력을 동일한 스트림에서 getline
과 섞어서는 안됩니다.
cin.ignore(2, '\n');
0
입력 버퍼가 새로운 라인을 포함
cin>>Choice;
이 진술 후 :
빠르고 쉬운 수정과 같이, std::basic_istream::ignore
를 사용하여 스트림에서 후행 개행 문자를 제거하는 것입니다 Enter 키를 눌러 문자를 남깁니다. 새로운 라인의 문자가 발견 될 때까지,
그래서 getline
if (Choice==1)
{
getline(cin,title);
로 다음 문은 빈 문자열을 읽습니다. 이 문 앞에
삽입 버퍼를 지우려면 다음 호출
#include <limits>
//...
{
getline(cin,title);
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
.
정말 고마워요. D, 효과가 있어요. –