c语言基础:关于switch的用法

一般情况下,switch后面的括号内只能加整型,即不能加浮点型,字符串。加浮点型和字符串都会编译错误。
这次主要是说明如果是加字符的话是怎么运行的,和switch后面括号内加的是两个数的结果是什么

①先上代码

#include 
int main (void){
    char ch;
    printf ("enter a value btw 1 to 2:");
    scanf ("%c",&ch);
    switch (ch){
        case 1:printf ("1\n");
                break;
        case 2:printf ("2\n");
                break;
        case 3:printf ("3\n");
                break;
        case 4:printf ("2\n");
                break;
        case 48:printf ("hh\n");
                break;
        case 42:printf ("2\n");
                break;
    }

    return 0;
}

如果直接定义字符型,那么输入0的话会输出“hh”(因为0的ascii码为48)

②如果switch后面括号内加的是两个数如下:
(ch,ch+1),则最终是以最后一个为准,即如果按上面代码来运行,输入0则输出1,输入1则输出2,以此类推。


以上内容为个人观点,如有意见欢迎交流


你可能感兴趣的:(c语言)