본문 바로가기

Computer/C++

[C++] String 라이브러리 띄어쓰기(white space) 포함해서 받기

- 0. 매번 할 때마다 찾고 할 때마다 헷갈려서 결국 이거에 이십분은 소비한다.

적어놓으면 달라지겠지.

띄어쓰기를 포함한 변수를 받는 방법

- 1. 한 줄만 받을 때

string tmp;
getline(cin, tmp);

- 2. 몇줄인지 변수로 받고, 띄어쓰기가 포함된 스트링을 받을 때

int n;
vector < string > arr;

cin>>n;
cin.ignore(256,'\n');
for(int i=0; i<n; i++){
  string tmp;
  getline(cin,tmp);
  arr.push_back(tmp);
}

int형 변수 n을 입력받고 난 이후 받은 \n이 버퍼에 남아 getline에 들어가게 된다고 한다.

이를 ignore시켜주고 난 후 이용하면 됨.

- 2. 참고 사이트

https://leeusin.tistory.com/418, (cin.ignore 사용)

https://blog.naver.com/ruimm/220664112167

'Computer > C++' 카테고리의 다른 글

[C++] Hxd 만들기  (0) 2020.09.03