https://blog.dasomoli.org/220/
매크로에서 do { ... } while(0) 을 사용하는 이유