29.7 코드를 한 번만 실행하기

do while의 특성을 활용하여 코드를 한 번만 실행할 수도 있습니다.

do_while_once.c

#include <stdio.h>

int main()
{
    do
    {
        printf("Hello, world!\n");
    } while (0);    // while에 0을 지정하면 코드가 한 번만 실행됨

    return 0;
}

실행 결과

Hello, world!

while에서 조건식 대신에 0을 지정하면 do 부분의 코드가 한 번만 실행됩니다. 즉, 조건식이 거짓이므로 반복을 하지 않고 바로 끝내기 때문이죠. 여기서 do while (0)은 별로 쓸모가 없을 것 같지만 매크로에서 유용하게 사용됩니다('Unit 75 매크로 사용하기' 참조).

stdbool.h를 포함하여 조건식에 0대신 false를 지정해도 됩니다.

지금까지 for, while, do while의 다양한 사용 방법을 알아보았습니다. 반복문은 프로그래밍에서 비중이 큰 부분이므로 눈에 익혀두는 것이 좋습니다. 특히 반복문은 반복 조건 지정이 가장 중요합니다.