break와 continue를 잘 이용하면 반복문을 제어할 수 있다. 먼저 break는 for, while, do while, switch 문법에서 제어 흐름을 벗어나기 위해 사용한다. break로 반복문 끝내기 while(do while)뿐만 아니라 for에서도 break의 동작은 같다. 무한루프가 예시이긴 하지만, 반복 횟수가 정해져 있더라도 break를 사용하면 반복문은 바로 끝난다. continue로 코드 실행 건너뛰기 이번에는 continue를 사용하여 일부 코드를 실행하지 않고 건너뛰어보자. 다음은 1부터 100까지 숫자 중 짝수만 출력한다. continue는 루프를 나오지는 않는다. 다만 해당 조건에 부합할 경우 그 조건만 건너뛰고 다시 루프문으로 들어간다. for 뿐만 아니라 while(d..
if 조건문은 참이거나 거짓일 때 두 가지만 처리할 수 있거나, else if를 사용하더라도 매번 조건식을 지정해주어야 했다. switch 분기문은 조건이 많아도 손쉽게 처리할 수 있다. switch (값을 판단할 변수) { case 1: printf("1 입니다.\n"); break; case 2: printf("2 입니다.\n"); break; default: printf("default\n") break; } 값을 판단할 변수가 1이라면 case 1에 따라 "1 입니다." 가 출력되고, 2라면 case 2에 따라 "2 입니다."가 출력된다. 그 무엇도 아니라면 default를 따라 "default"가 출력된다. 사용자가 입력한 값에 따라 문자열 출력하기 컴파일 후 2를 입력하고 엔터를 치면 아래와 ..
이번 단원에서는 1. 부호 있는 정수와 부호 없는 정수 두 자료형에 비트 연산을 했을 때 어떤 차이점이 있는지 알아 볼 것이다. 2. 또한 비트 연산자를 응용한 플래그 처리 방법도 알아볼 것이다. 시프트 연산과 2의 거듭제곱 알아보기 시프트 연산자는 2의 거듭제곱인 숫자를 빠르게 구할 때 유용하다. char형은 1바이트(8비트)이고 이에 따라 총 8개의 0과 1을 적을 수 있다. 2진수이기 때문에 1을 왼쪽으로 한 자리씩 시프트하면 그에 따른 제곱이 하나씩 올라가 시프트 연산자를 통해 거듭제곱인 숫자를 빠르게 구할 수 있다. 즉 비트의 이동 횟수는 지수(exponent)와 같다. 시프트 연산으로 자릿수를 넘어서는 경우 알아보기 시프트 연산자를 사용하여 비트가 첫째 자리나 마지막 자리를 넘어설 때까지 이동..