0으로 평가되지 않은 나눗셈은 정의되지 않은 동작입니까? 다음 코드에 대해 일부 동료와 의견이 일치하지 않습니다. int foo ( int a, int b ) { return b > 0 ? a / b : a; } 이 코드가 정의되지 않은 동작을 나타내나요? 편집 : 불일치는 b > 0검사가 최적화 된 지나치게 열망하는 최적화 컴파일러에서 버그로 보이는 것에서 시작 되었습니다. 아니. N4140의 인용문 : §5.16 [expr.cond] / 1 조건식은 오른쪽에서 왼쪽으로 그룹화됩니다. 첫 번째 표현식은 상황에 따라 bool로 변환됩니다. 평가되고 참이면 조건식의 결과는 두 번째 식의 값이고 그렇지 않으면 세 번째 식의 값입니다. 두 번째 및 세 번째 식 중 하나만 평가 됩니다. 더욱이: §5 [expr..