cin.getline() 함수

Programming/C & C++ 2012. 8. 7. 01:16
반응형

문자열을 한줄단위로 입력을 받기위해서 사용하는 것이 cin.getline()함수이다.

getline 함수의 파라미터는 다음과 같다.

  1. 문자열을 받을 문자열 포인터
  2. 문자열의 최대 길이
  3. 구분자

두번째 파라미터는 한번에 입력받을 문자열의 최대 길이이며, 이 길이에는 마지막 NULL문자까지 포함한다.
예를들어 HELLO를 입력받았을 경우 6자리 문자열로 인식된다.

마지막 파라미터는 문자열을 끊는 구분자다. 기본적으로 NULL('\n')로 설정되어있다.

결론적으로 cin.getline()함수는 Console 입력을 구분자를 만나거나 혹은 최대 문자열만큼 배열 담는 역할을 수행하며, 남은 문자열은 계속해서 입력버퍼에 유지된다.

아래는 cin.getline()함수의 예시이다.

#include <iostream>
using  namespace std;
int main(){
  char str[5];
  cin.getline(str, 5); // 그냥 엔터를 쳤을 경우에 str[0] = NULL이 된다.
  return  0;
}
반응형

댓글을 달아 주세요