2012-08-04 2 views
0

지난 주에 C++로 프로그래밍하는 법을 배웠고 Microsoft Visual Studio 2010 Express를 사용하여 첫 번째 프로그램을 작성했습니다. 집에있는 내 컴퓨터는 Mac이고 MS Visual Studio가 없으므로 xcode를 사용하고 MS Visual Studio의 코드를 xcode로 복사하기로 결정했습니다. 대부분의 경우 xcode에는 부울 논리 구문에 문제가 있다는 점을 제외하고는 오류가 없습니다. 다음은 문제가되는 코드의 몇 가지 예입니다.Mac에서 xcode에 대한 C++ 부울 논리 구문

if(place == 1) 
{ 

cout<< name << " 'IS NOW THE FASTEST JUNIOR IN THE UNITED STATES!!!\n"; 

cout<< "ABSOLUTLY INCREDIBLE!!!!! WHAT AN AMAZING RACE\n" 
    << endl 
    << endl; 

cout<< "You did it! You won the race and are now the fastest Junior skier in the USA!\n"; 

cout<< "All that hard work really paid off for you!\n"; 

    <<endl; 
} 
else (place >1) 
{ 
cout << "You skied a great race, but unfortunately you did not beat Ben.\n"; 

cout<< "You can always race again next year and shoot for gold.\n" 
    <<endl; 
} 

오류가 발생하면 "표현식 결과가 사용되지 않음"이라고 표시됩니다. 이 문제를 어떻게 해결할 수 있습니까?

+0

적절한 C++처럼 보이지 않습니다. else 문에는 if 문과 같은 조건이 제공되지 않습니다. 'else if (place> 1) {/ * ... * /}'시도 – Hassan

+2

전체 코드 나 중요한 내용을 올리십시오. – Heisenbug

+1

@Hassan : 유효한 코드라고 생각합니다. 'else'가'if ', else (place> 1)처럼 작동하지 않는다는 것을 지적하는 것이 옳다.'else' 섹션에서'place> 1'의 값을 평가하고 그 결과를 버리는 것을 의미한다. @Chris Rouw :이 오류는'(place> 1)'&'(restStopDecision == 2)' –

답변

1

우리는 (읽기 및 적절하게 포맷 한 후 이해하는 것이 훨씬 쉽게했다) 당신의 코드의 첫 번째 줄에 시작하는 경우 :

else(place >1); 

이는 if 문장의 마지막 부분이며, 것을 의미한다 if의 조건이 참이 아니면 else 이후의 진술을 수행하십시오. 귀하의 경우에는 place이 1보다 큰지 확인한 다음 결과를 버리는 표현식이므로 아무 것도 수행하지 않습니다. else 대신 else if을 사용하는 것이 좋습니다.

그런 다음 다음 줄에 보면 다음과 같습니다

else (restStopDecision == 2); 

당신은 다시 같은 실수를 할 수 있지만, 지금은 아무것도 자체에 오류가있는 것으로 생각하지 않습니다 else와. 여기도 else if 일 수도 있습니다.

+0

아마도 두 번째 'else'는 다른 if (의도 된 것인지의 여부와 관계)와 연결됩니다. –

+0

고맙습니다. 나는 그 오류를 수정했고 프로그램은 이제 문제없이 실행된다. –