When we check the size of a function using sizeof(), we always get 1 byte.
What does this 1 byte signify?
It's a constraint violation, and your compiler should diagnose it. If it compiles it in spite of that, your program has undefined behaviour [thanks to @Steve Jessop for the clarification of the failure mode, and see @Michael Burr's answer for why some compilers allow this]: From C11, 6.5.3.4./1:
The
sizeofoperator shall not be applied to an expression that has function type