Dato un semplice switch switch
switch (int)
{
case 1 :
{
printf("1\n");
break;
}
case 2 :
{
printf("2\n");
}
case 3 :
{
printf("3\n");
}
}
L'assenza di una dichiarazione di rottura nel caso 2, implica che l'esecuzione continuerà all'interno del codice per il caso 3. Questo non è un incidente; è stato progettato in questo modo. Perché sono state prese queste decisioni? Quale vantaggio offre questo rispetto alla presenza di una semantica di interruzione automatica per i blocchi? Qual era la logica?