관계, 논리, 조건 연산자.
if (float expression, float true_value, float false_value)
이 if 함수는 단순 if 조건문이 아니라 if ~else 라고 보셔야 합니다.
조건이 참이면 float true_value를 출력하고
조건이 거짓이면 float false_value를 출력하라는 의미입니다.
결국 참과 거짓 조건에 모두 실행문이 걸려 있는것입니다.
위의 함수를 간단하게 글로 표현하면
"32프레임보다 적은 프레임들 중에서 9로 나눈 나머지가 1이
되는 프레임의 값(1,10,19,28)을 출력하고 그 외의 모든 프레임들은 -1값을 출력하시오."
간단하게 box로 transform을 해보시면 이해가 가실 겁니다.
1. 관계 연산자
관계 연산자는 두 개의 피연산자를 비교하는데 쓰는 연산자이다.
2. 논리 연산자
논리 연산자는 여러 개의 조건을 조합하여 참인지 거짓인지 따질 때 사용한다.
논리 연산 표(왼쪽은 수학적, 오른쪽은 C)
1. NOT 연산자(!)
NOT 연산자는 상수나 변수들의 수식에 적용될 수 있으며 수식의 값이 참이면 거짓으로 만들고 거짓이면 참으로 만든다.
2. AND(&&)와 OR(||) 연산자
AND와 OR 연산자는 논리적인 AND와 OR를 구현한 이항 연산자이다. AND는 두 개의 피연산자가 모두 참일 때만 연산 결과가 참이 되고, OR연산자는
하나의 연산자만 참이면 연산 결과가 참이 된다.
3. 논리 연산자의 우선 순위
NOT(!)연산자의 우선 순위는 증감(++, --)와 동일
AND(&&)와 OR(||) 연산자가 우선 순위는 모든 산술 연산자나 관계 연산자보다 낮다.
AND와 OR 연산자는 우선 순위가 높다.
4. 단축 계산
AND 연산자의 경우, 첫 번째 피연산자가 거짓이면 다른 피연산자들을 계산하지 않으며, OR 연산자의 경우, 첫번째 피연산자가 참이면 다른
피연산자들을 계산하지 않는다. 이를 주위해야 한다.
3. 조건 연산자(? :)
조건 연산자는 C에서 유일하게 삼항 연산자이다. 형태는 'exp1?exp2:exp3'이며 exp1값이 참이면 exp2이 거짓이면 exp3가 계산된다.
출저 네이버 블로그 http://blog.naver.com/dufvndrnjs?Redirect=Log&logNo=70134344992
'C언어 & 파이썬 > C언어' 카테고리의 다른 글
제일 처음 프로젝트만들고 컴파일하기전 단계. (0) | 2012.07.19 |
---|---|
컴파일하기. (0) | 2012.07.17 |
VISUAL BASIC 2011 EXPRESS (0) | 2012.05.12 |
관계, 논리,비트 연산자표와 논리식. (0) | 2012.04.20 |
연산자 우선순위표. (0) | 2012.04.20 |