Если вы используете GCC, и вы не используете флагов компиляции, которые удаляют специфические расширения для компилятора, тогда sizeof(void)
равно 1. GCC имеет нестандартное расширение , которое делает это.
В общем случае void
является неполным типом, и вы не можете использовать sizeof для неполных типов.