LINUX.ORG.RU

switch && C++


0

0

почему этот код компилируется и почему "Hello" не печатается?

$ cat main.cpp
#include <cstdio>

int main(void)
{
switch (1) {
printf("Hello\n");
case 1:
printf("hi\n");
}
return 0;
}

это просто особенность icc и gcc что этот код компилируется или он соотвествует стандарту?

anonymous

switch - это замаскированный goto, case ... - это метка. Здесь просто происходит переход на case с соответствующим значением, как если бы вместо switch стоял goto.

DKorolkov
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.