U E D R S I H C RSS
ID
Password
Join
우주의 대변동이라도 어린아이가 헛간 한 구석에 죽어 있는 참새의 주검을 바라보며 생각에 잠겨 있는 광경만큼이나 감동스럽지는 못하다. ―토마스 새비지



Contents

1 C에서 "조건"이란?
2 if
3 ? : 연산자
4 switch

1 C에서 "조건"이란? #

  • C에서는 0이 아닌 정수는 모두 true(참) 값으로 간주합니다.
  • C++에서는 bool 타입이 있어 다음과 같이 참, 거짓을 나타냅니다.
    1. 참 : 0이 아닌 정수 , true
    2. 거짓 : 0 , false
  • 각각의 조건은 &&(그리고), ||(또는) 연산을 통해 논리 조합이 가능합니다.
    • (주의) &, |는 이진 산술 연산입니다. 타이핑 오류 조심하세요!
  • 가끔 0이 아니다라는 것을 의미하기 위해 !을 붙이는 경우가 많습니다. 아래는 ttt가 0이 아닐 경우 출력하는 예제입니다. (이것은 주로 포인터 변수가 NULL이 아닌 경우를 검사할 때에도 자주 사용됩니다)
    int ttt;
    ...
    if (!ttt) printf("0이 아닙니다!\n");
    

2 if #

if (조건) 문장;
else 문장;
  • 특정 조건가 참인지 거짓인지에 따라 실행을 다르게 하고 싶을 때 사용합니다.

3 ? : 연산자 #

조건 ? 참일경우 : 거짓일경우
  • 특정한 경우에 사용하면 상당히 유용한 연산자입니다. 간이 if 문이라고 생각하시면 됩니다.
  • 문장이 아니며 위 문법 전체가 하나의 값이 된다는 것이 특징입니다. 예를 들면 아래 함수는 i값에 따라서 다르게 문장을 출력합니다.
    void test(int i ) {
     printf("%s\n", (i>10) ? "i는 10이상!" : "i는 10미만...");
    }
    

4 switch #

switch(int값) {
 case 값 : 문장;
 case 값 : 문장;
 ...
 default : 문장;
}
  • 특정 정수값 기준으로 각 값에 따른 처리를 기술하고자 할 때 사용합니다.
  • int 값만이 조건이 될 수 있다는 것에 주의하세요.
  • default 부분은 모든 조건에도 해당되지 않을때 실행되는 부분입니다. 생략가능합니다.
  • 각각의 case 에 이어지는 문장은 여러 문장이 올수 있으며, break을 적어주면 switch 밖으로 빠져나가게 됩니다. 그렇지 않으면 바로 아래의 case 문장을 이어서 실행하게 됩니다.
  • 예제는 수업때 설명하는 예제를 참조하세요.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2010-10-28 12:42:52
Processing time 0.3240 sec