Я думаю все из-за того, что начало и конец массива, то бишь begin() и end() совпадают.
23.3.2.8 Zero sized arrays
1 array shall provide support for the special case N == 0.
2 In the case that N == 0, begin() == end() == unique value. The return value of data() is unspecified.
Добавлено через 4 минуты
Смотрим далее:
5.3.3 Sizeof
2 When applied to a reference or a reference type, the result is the size of the referenced type. When applied
to a class, the result is the number of bytes in an object of that class including any padding required for
placing objects of that type in an array. The size of a most derived class shall be greater than zero (1.8).
The result of applying sizeof to a base class subobject is the size of the base class type. When applied
to an array, the result is the total number of bytes in the array. This implies that the size of an array of n
elements is n times the size of an element.
Добавлено через 2 минуты
Думаю насчет sizeof 1 структуры вопросов ни у кого не возникало?)