인프런 커뮤니티 질문&답변

Clain님의 프로필 이미지
Clain

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

getline()에 대하여

해결된 질문

작성

·

142

·

수정됨

0

안녕하세요 🙂 큰돌님!

새로 교안 업그레이드를 해주시면서 getline()에 대한 설명을 읽어보았는데요,

getline()의 경우 cin과 달리, '\n'까지 입력받는 것은 이해하였는데,

밑의 출력 예시를 보면 getline()이 입력받은 뒤에 오는 개행문자를 삭제한 것 같은데, 제가 잘못 이해한 것인지 질문드리고 싶습니다! 다른 질문글에 답변 주신 것도 읽어보았는데 잘 이해가 안되어서요ㅜㅜ

답변 1

1

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 clain님 ㅎㅎ

제가 혼란을 드린 것 같습니다... 이게 다른 컴파일러에서는 띄어쓰기가 되어서 제가 착각한 것 같습니다.. 혼란을 드려 죄송합니다 ㅠ

해당 부분의 내용은 수정되었습니다.

이게 올바른 설명입니다.

 

설명

getline()은 기본적으로 개행 문자 ('\n')를 줄의 끝으로 인식하고 그 개행 문자직전까지 입력을 받습니다. 

만약 다른 종결 문자를 사용하고 싶다면, 이를 세 번째 인자로 전달하면 됩니다. 
예를 들어 . 을 끝으로 인식하고 싶다면 다음과 같이 쓰면 됩니다. 

getline(cin, line, '.');


코드

#include<bits/stdc++.h>
using namespace std;  
string s;
int main(){
    getline(
cin, s, '.');
   
cout << s << '\n';
   
return 0;
}
/*
입력
엄준식 화이팅.

출력
엄준식 화이팅
*/



또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


Clain님의 프로필 이미지
Clain
질문자

친절한 답변 감사합니다!! 업데이트도 바로 해주시고 칼같은 빠른 피드백이네요 :)ㅎㅎ 꼭 완강하겠습니다 행복한 하루 되세요~!

Clain님의 프로필 이미지
Clain

작성한 질문수

질문하기