2013-06-13 4 views
0

나는 C에서이 두 문장의 차이점을 알고 싶습니다. 동등한 지 여부에 대한 논리적 증명.이 두 문장의 차이점

if (!(b[i]&&c[i+1]&&c[i+2]&&d[i+3])) 

과 :

if (((b[i] == 0|| c[i+1] == 0)|| c[i+2] == 0)|| d[i+3] == 0) 
+0

에 대해 읽을 수 있습니다. http://en.wikipedia.org/wiki/De_Morgan%27s_laws에 따르면이 두 가지는 동일합니다. 나는 당신이 운이 좋다면 평가 순서조차도 여기 같다고 생각합니다. –

답변

4

예, 그들은 모두 같은 결과로 평가됩니다.

표현이

가 는 지금까지 증거가 가서, 즉 어느 정도 드 모르 강의 법칙

입니다

(끝 누락 된 괄호를 금지) true를 반환하고, 경우 문을 입력 것보다 그 가치 중 하나는 0 경우

http://www.seas.upenn.edu/~ese570/Boolean_Identities.pdf