-1
이 코드의 출력이 count==4
이 아닌 이유는 무엇입니까? operator--
은 operator!
보다 우선합니다. 맞습니까? 그들은 모두 접두사이고 어쨌든 다른 표현식에 적용되는으로 --
및 !
의연산자!() 및 연산자 -() if 조건
int main()
{
int found = 0, count = 5;
if (!found || --count == 0)
cout << "danger" << endl;
cout << "count=" << count<< endl;
}
[단락 회로 평가] (https://en.wikipedia.org/wiki/Short-circuit_evaluation) –
표현식에 다른 연산자가 있습니다. '!|'는 단락 평가를하기 때문에 ('! found '가 먼저 평가 될 것이고,'--count == 0'만이 평가 될 것이기 때문에)'!'과'--'의 상대적 우선 순위는 중요하지 않습니다. '! found'가 0이 아닌 경우 평가, 그렇지 않은 경우 평가). – Peter
단락에 대해 알고 있지만 접두사가 최우선 우선으로 감소하지 않습니까? 내가 처음에 카운트를 4로 줄인 다음 조건을 확인해서는 안됩니까? –