2012-04-28 8 views
2

추출 연산자 >>가 공백으로 구분됩니다. 추출 연산자가 스트림에서 분리 문자를 제거합니까? 예를 들면, (잠재적 이후의 getline 문을 엉망으로) 내가 파일추출 연산자가 구분 기호를 제거합니까?

6 
Foo 
Bar 

및 파일 스트림은 여전히 ​​6 다음에 개행 문자를 포함 않는 코드

ifstream fin(filename); 
int x; 
fin >> x; 

이 있다고? 추출 과정에서 제거 되었습니까?

+2

사용해 보셨습니까? – Mat

+0

예, 개행 문자가 아직 남아 있지만 추출 연산자가 작동하는 방식이거나 파일에 개행 전에 보이지 않는 공백 문자가있는 지 여부는 알기 어렵습니다. 캐리지 리턴 –

답변

2

소비되지 스트림의 일부가 변경되지 않습니다. 따라서 getline을 호출하면 빈 행이 반환됩니다.

정확한 파일 내용을 모를 경우 cat -A filename을 사용해보십시오.

0

사용해보기. 당신은

ifstream fin(filename); 
string x; 
fin >> x; 
cout<<x<<"foo"; 

당신이 그것을 알 수 있습니다 할 수있는)

관련 문제