expression이 참인 경우에만 statement1이 실행됩니다.
거짓인 경우 statement 2가 실행됩니다.
if (expression)
{
// statement1
}
else
{
// statement2
}
expression1이 참인경우 statement 1 실행
expression1이 거짓이고 expression2가 참인 경우 statement 2 실행
expression1,2가 거짓이고 expression3이 참인 경우 statement 3 실행.
if (expression1)
{
// statement1
}
else if (expression2)
{
// statement2
}
else if (expression3)
{
// statement3
}
expression1이 참인경우 statement 1 실행됩니다.
expression1이 거짓이고 expression2가 참인 경우 statement 2 실행됩니다.
expression1,2가 거짓인 경우 statement 3 실행됩니다.
if (expression1)
{
// statement1
}
else if (expression2)
{
// statement2
}
else
{
// statement3
}
switch(data1):
case(data2):
//statement1
break;
case(data3):
// statement2
break;
default:
// statement3
break;
...
data1과 case의 data가 동일할 경우 해당 case가 실행됩니다.
case에 모두 해당되지 않을 경우 default가 실행됩니다.
switch(data1):
case(data2):
// statement
case(data3):
// statement
break;
다음 예시에서는 data2가 data1과 같더라도 break 문이 없기 때문에 data2에 해당하는 case만 실행되는 것이 아니라 data3에 해당하는 case도 실행된다. => 다음 break문이 나올 떄까지 실행됩니다.
의도적으로 사용한 것이 아니라면 프로그래머의 의도와 맞지 않는 에러를 발생 시킬 수 있기 때문에 주의해야합니다.
#define identifier replacement
identifier : 매크로에 부여되는 이름 식별자입니다.replacement : 코드에서 식별자에 해당하는 부분을 교체하는 텍스트입니다.매크로는 전처리기에 의해 처리되며 순전히 텍스트 대체입니다.
교체되는 부분은 C++의 코드 유형검사나 범위 규칙이 적용되지 않습니다.
문제 발생을 방지하기 위해 C++에서는 const, 인라인 함수등 다른 대체제가 존재합니다.
특정한 조건상에서 반복이 수행되는 구문을 반복문이라고 합니다.
for (1.반복자 초기화; 2.반복자 조건감별; 3.반복자 변경)
{
// statement
}
for 문의 형식입니다.
첫번째 반복자 초기화는 한번만 일어납니다.
두번째 반복자 조건감별은 중괄호 내의 구문이 한번 수행된 뒤 조건 감별을 수행합니다.
세번째 반복자 변경은 반복자 조건감별이 참이면 수행됩니다.
while(조건)
{
// statement
}
while문의 형식입니다.
조건이 참이라면 while문은 중괄호 내의 구문을 수행합니다.
구문을 수행한 뒤 while문은 조건을 다시 확인하고 참이면 다시 수행, 참이 아니라면 멈춥니다.
for (1.반복자 초기화; 2.반복자 조건감별; 3.반복자 변경)
{
// statement1
continue;
// statement2
}
while (조건감별)
{
// statement1
continue;
// statement2
}
continue 구문이 수행되면 반복문 내에서 continue 아래의 구문이 무시됩니다.
그리고 for문의 경우는 반복자 조건감별 조건으로 이동합니다.
while문의 경우는 조건감별 조건으로 이동합니다.
for (1.반복자 초기화; 2.반복자 조건감별; 3.반복자 변경)
{
// statement1
break;
// statement2
}
while(조건감별)
{
// statement1
break;
// statement2
}
break 구문이 수행되면 반복문을 탈출합니다.
break 구문이 수행되면 그 아래의 구문은 무시되고 반복문을 탈출합니다.
answer의 값은?
int main(){
int x = 10;
int bit = 8;
int answer = 0;
if (x & bit)
{
answer++;
}
else if (x | bit)
{
answer++;
}
else
{
answer++;
}
}
answer의 값은?
int main()
{
int x = 2;
int bit = 2;
int answer = 3;
switch(bit):
case(x):
answer++;
case(4):
answer++;
case(5):
answer++;
default:
answer--;
break;
}
answer의 값은?
#define P 10 / 2
int main()
{
int answer = 20 / P;
}
answer의 값은?
int main()
{
int answer = 0;
for (int i = 0; i < 5; ++i)
{
for (int j = 0; j < 5; ++j)
{
it (j % 2 == 0)
{
continue;
}
answer += j;
}
}
}