Algorithm/TIP

[c++] get() getline()함수 - 특정 문자가 나올때 까지 입력받기

IagreeBUT 2022. 10. 21. 21:47
728x90

 

 

getline에는 두가지가 있는데

iostream의 cin.getline()

  • 문자 배열로 마지막 글자가 '\0'인 string을 입력받는데 사용한다
  • 마지막 \0은 null로 바꾸고 n-1 까지만 저장한다 
  • delim을 따로 지정해주면, '\0'대신 해당 글자를 사용한다
cin.getline(char* str, streamsize n);
cin.getline(char* str, streamsize n, char delim); 
//변수 주소, 최대 입력 가능 문자수, 종결 문자

 

 

 

string의 getline()

길이의 제한 없이 입력받을 수 있다는 점에서 다르다.

원하는 구분자(delimeter)를 만날떄 까지 모든 문자열을 입력받아 하나의 string 객체에 저장한다.

getline(istream& is, string str);
getline(istream& is, string str, char delim);
//입력스트림 오브젝트, 문자열을 저장할 스트링, 종결문자

 

 

 

 

728x90