여러줄을 한 번에 주석처리 했다가, 나중에 다시 주석을 해제해야 할 때가 있습니다.

...그리고 이 것을 자주 반복해야 할 때도 있습니다.

이 때 아주 유용하게 쓸 수 있는 방법입니다.

if (false)

블럭으로 감싸고, if (false)에 넣으면 실행되지 않습니다.

주석 처리를 해제하려면 if (false)if (true)로 바꾸면 됩니다!

int print_s(va_list *arguments)
{
    const char *const   str = va_arg(*arguments, const char *);
    const size_t        length = ft_strlen(str);

    **if (false) // 이 블럭이 주석!**
    {
        printf("str: %s\\nlength: %d\\n", str, length);
    }
    ft_write(STDOUT_FILENO, str, length);
}

더 좋은 방법이 있기 때문에, 권장사항은 아닙니다.

// */

주석 처리를 끝낼 부분에 // */ 줄을 만들어두면 주석을 쉽게 토글할 수 있습니다.

단순히 주석 처리를 시작할 부분에 /*를 추가하면 됩니다.

#include "ft_printf_internal.h"

**/***
// 여기가 주석 토글 시작!

int main(void)
{
    ft_printf("%#" PRIxPTR "\\n%p\\n", NULL, NULL);
    printf("%#" PRIxPTR "\\n%p\\n", NULL, NULL);
}

// 여기가 주석 토글 끝!
**// */**

int ft_printf(const char *format, ...)
{
    // ... 후략

if (false)에서는 else를 쓸 수 있었는데, 사실 이 방법으로도 가능합니다.

**// /***
// 위 줄이 주석이면 위쪽이 주석이 되고, 해제하면 아래쪽이 주석이 됩니다.

int main(void)
{
    return (EXIT_SUCCESS);
}

**/*/**

int main(void)
{
    return (EXIT_FAILURE);
}

**// */**
int main(void)
{
/*
    puts("1");
/*/
    puts("2");
/*/
    puts("3 사실 이렇게 하면");
/*/
    puts("4 짝수번째 홀수번쨰 나눠서");
/*/
    puts("5 이런 짓도 가능은 합니다만");
/*/
    puts("6 쓸 일이 없길 바랄게요...");
// */
}