Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 开关箱中的另一种情况_C - Fatal编程技术网

C 开关箱中的另一种情况

C 开关箱中的另一种情况,c,C,我在C编程中使用switch case做了一个简单的元音和辅音问题,但得到了不同的输出。程序直接访问开关的默认情况。这可能是因为我们无法识别这种情况 条件是: case'a'| | | | | | | | | | | | | | | | | | | | | | printf(“元音”); 打破 违约: printf(“辅音”); 大小写“a”| | | | | | | | | | | | | | i | | | | | | | | |也相当于例1:printf(“元音”) (除'\0'以外的所有

我在C编程中使用switch case做了一个简单的元音和辅音问题,但得到了不同的输出。程序直接访问开关的默认情况。这可能是因为我们无法识别这种情况

条件是:

case'a'| | | | | | | | | | | | | | | | | | | | | |
printf(“元音”);
打破
违约:
printf(“辅音”);

大小写“a”| | | | | | | | | | | | | | i | | | | | | | | |
也相当于
例1:printf(“元音”)

(除
'\0'
以外的所有字符文字都是真实的,因此
大小写
表达式产生
1
,在ASCII中,它将对应于一个名为的不可打印字符,您不应该在文本文件中找到该字符。)

您需要的是:

case 'a': case 'e': case 'i': case 'o': case 'u': printf("vowel");

i、 e.(取决于您如何看待它)多个
大小写
标签附加到同一
printf
语句,或者多个大小写之间有隐式插入。

case'a'|| e'| i'| o'| u':printf(“元音”)
也相当于
例1:printf(“元音”)

(除
'\0'
以外的所有字符文字都是真实的,因此
大小写
表达式产生
1
,在ASCII中,它将对应于一个名为的不可打印字符,您不应该在文本文件中找到该字符。)

您需要的是:

case 'a': case 'e': case 'i': case 'o': case 'u': printf("vowel");

i、 e.(取决于您对它的看法)多个
案例
标签附加到同一
printf
语句,或者多个案例之间有隐式插入。

,因为在C中,案例备选方案不是这样做的。您的案例标签等于
(char)1
,ASCII中的字段分隔符。@bipll:它只是
1
;字符文字的
int
类型为C,而不是
char
。并且大小写标签将转换为控制表达式的类型(开关中的表达式)。此外,控制表达式受整数升迁的影响,因此它至少是
int
,而不是
char
。因为在C中不是这样做的。您的case标签等于
(char)1
,ASCII字段分隔符。@bipll:它只是
1
;字符文字的
int
类型为C,而不是
char
。并且大小写标签将转换为控制表达式的类型(开关中的表达式)。此外,控制表达式受整数提升的影响,因此它至少是
int
,而不是
char