2016-07-21 2 views
0

첫째, 저는 C++의 초보자입니다. 자비를 베풀어주십시오. 나는 대답을 찾을 수 없다.' n'(끝의 줄)까지 읽기

안녕하세요, 저는 통역사를 쓰려고합니다.

#define __TEST__ 1 
while(Source >> Word){ //Source is file descriptor. I can't use EOF method because of if i do that, i will need to write two statments. Critical... 
    if(Word == '\n'){ // Word is a string object. 
     //Clean the vector 
#  if __TEST__ 
      cout << "Succesful!" << "\n"; 
#  endif  
    }    
} 

내가이 코드를 컴파일 할 때, 그것의 때문에 " '"토큰의 오류를 제공합니다 :이 때 그리고 난, 줄 끝으로'\ n을 '을 선택합니다. 내가 토큰 '' '로 변경하는 경우, 컴파일러는 오류를하지만, 실행, 프로그램 라인의 끝을 감지 할 수없는 경우. 어떻게이 문제를 해결의 가장 빠른 방법입니다?

+0

어떻게 Word' 같이 – aschepler

+0

선언 '이다..? "를 문자열 단어입니다" –

+0

@ Great.And.Powerful.Oz 어떤 상황에서'Word'의 길이가 0이 될 것으로 기대하십니까? 라인의 끝이 다시 나타날 때가 아닙니다. 그것은 다음 줄에서 계속 읽기 때문에 계속 발생합니다. – sepp2k

답변

1

>> 폐기를 공백 때문에 Word원'주지 않는다 t는 이제까지 줄 바꿈을 포함

당신이 라인이 끝날 때까지 읽고 싶다면, 당신은 >>보다는 getline 함수를 사용해야합니다

+0

고마워,하지만 어떻게 단어로 나눌 수 있을까? –

+1

@IbrahimIpek 귀하의 언어의 어휘 규칙에 따라 (부수적으로'>>'거의 확실하지 않음). – sepp2k

+0

그의 질문에 대답하지 않기 때문에 마이너스 하나. – GreatAndPowerfulOz

관련 문제