如果... else switch ...声明

Pio*_*otr 2 c gcc

以下代码在我的gcc 5.4.0上编译,不生成任何警告并且工作正常:

if (a == 0) {
    puts("0");
} else switch (a) {
    case 1: puts("1"); break;
    case 2: puts("2"); break;
    default: puts("default"); break;
}
Run Code Online (Sandbox Code Playgroud)

如果...其他开关......正确的说法?

Vit*_*meo 8

您的代码没有任何问题.......语法ifelse如下:

attr(可选)if(condition)statement-true else statement-false

switch是一个声明,所以允许继续else.


请注意,这else if也不是一个特殊的构造,它只是一个if声明之后的声明else.