This page is also available in 3 other languages

if

[Control Structure]

설명

if 문은 조건을 체크하기 위해 쓰며 조건이 'true’이면 따라오는 문 또는 문장 세트를 실행한다.

문법

if (condition) {
  //statement(s)
}

매개변수

condition: 부울 식 i.e., true 또는 false

예제 코드

하나의 문 뒤에 중괄호를 생략할 수 있다. 그러면, 다음 줄(세미코론에 의해 정의 됨)만이 조건문이 된다.

if (x > 120) {
  digitalWrite(LEDpin, HIGH);
}

if (x > 120) {
  digitalWrite(LEDpin, HIGH);
}

if (x > 120) {
  digitalWrite(LEDpin, HIGH);
}

if (x > 120) {
  digitalWrite(LEDpin1, HIGH);
  digitalWrite(LEDpin2, HIGH);
} // 모두 옳음

주의와 경고

괄호 안에서 계산되는 식은 아래에 보이는 하나 또는 이상의 연산자 사용이 필요하다.

비교 연산자:

x == y (x가 y와 같음)
x != y (x가 y와 같지 않음 )
x <  y (x가 y보다 작음)
x >  y (x가 y보다 큼)
x <= y (x가 y보다 작거나 같음)
x >= y (x가 y보다 크거나 같음)

실수로 등호 하나(e.g. if (x = 10) )만 사용하는 것을 주의하세요. 등호 하나는 할당 연산자이고, x 를 10으로 설정. (값 10을 변수 x 에 넣음) 대신 등호 두개(e.g. if (x == 10) ) 사용해야 하는데, 이것은 비교 연산자이고, x 가 10과 같은지 아닌지 테스트한다. 뒤의 문은 x 가 10과 같을 때만 참이지만, 앞의 문은 언제나 참이다.

이것은 C++ 언어가 문 if (x=10) 를 다음과 같이 계산하기 때문: 10이 x 에 할당됨( 등호 하나는 (assignment operator) 임을 기억하세요). 그러면 'if' 조건은 10으로 평가되는데, 이것은 언제나 TRUE 으로 계산되는데, 왜냐면 0 아닌 모든 정수는 TRUE 로 평가되기 때문이다. 결과적으로 if (x = 10) 는 언제나 TRUE 으로 평가되며, 이것은 'if’문을 사용할 때 원하는 결과가 아니다. 게다가 x 는 10으로 설정되는데, 이것 역시 원하는 행동이 아니다.

더보기