n을 입력받고 나면 입력 스트림엔 여전히 줄바꿈 문자가 남아있습니다. 이 상태에서 getline으로 한 줄을 읽으면 getline은 줄바꿈 문자가 나오기 전까지 읽으므로 아무 문자도 읽지 않게 됩니다. 그래서 길이가 0이 되죠.
cin.ignore(1)로 문자 하나를 무시하면 됩니다.
13163번 - 닉네임에 갓 붙이기
n을 입력받고 나면 입력 스트림엔 여전히 줄바꿈 문자가 남아있습니다. 이 상태에서 getline으로 한 줄을 읽으면 getline은 줄바꿈 문자가 나오기 전까지 읽으므로 아무 문자도 읽지 않게 됩니다. 그래서 길이가 0이 되죠.
cin.ignore(1)로 문자 하나를 무시하면 됩니다.
댓글을 작성하려면 로그인해야 합니다.
sop369 5년 전
입력을 시도하는 과정에서 한줄이 자동으로 입력되는 것을 확인했습니다.
이렇게만 대충 짜서 입력을 해봤는데 첫번 째 줄이 그냥 생략되었습니다. 왜그럴까요 ㅠㅠㅠㅠ