Odpovídáte na názor k článku Programovací jazyk C3: podmínky, rozvětvení a programové smyčky. Názory mohou přidávat pouze registrovaní uživatelé. Nově přidané názory se na webu objeví až po schválení redakcí.
Or je implicitní, když za case není žádný kód. Viz příklad z článku
switch (x) {
case 0:
io::printfn("%d is zero", x);
case 1:
case 3:
case 5:
case 7:
case 9:
io::printfn("%d is odd number", x);
case 2:
case 4:
case 6:
case 8:
case 10:
io::printfn("%d is even number", x);
default:
io::printfn("I don't know what to say about %d", x);
}
nextcase řeší situaci, kterou AFAIK Rust vůbec neumí. Standardně skáče na další case, ale může skočit i někam jinam (viz case 1, který skočí na case 0 nahoru):
fn void duff(int* to, int* from, int count)
{
int n = (count + 7) / 8;
switch (count % 8)
{
case 0: *to++ = *from++; nextcase;
case 7: *to++ = *from++; nextcase;
case 6: *to++ = *from++; nextcase;
case 5: *to++ = *from++; nextcase;
case 4: *to++ = *from++; nextcase;
case 3: *to++ = *from++; nextcase;
case 2: *to++ = *from++; nextcase;
case 1: *to++ = *from++; if (--n > 0) nextcase 0;
}
}30. 9. 2025, 13:20 editováno autorem komentáře