Рассмотрим следующий оператор switch
:
switch( value )
{
case 1:
return 1;
default:
value++;
// fall-through
case 2:
return value * 2;
}
Этот код компилируется, но действительно ли он (= определенное поведение) для C90/C99? Я никогда не видел кода, где случай по умолчанию - это не последний случай.
EDIT:
Как пишет Jon Cage и KillianDS: это действительно уродливый и запутанный код, и я хорошо знаю об этом. Меня просто интересует общий синтаксис (определяется ли он?) И ожидаемый результат.