2014-09-24 108 views
0

以下switch语句是否正确?我的意思是我可以在一个switch case语句中使用常量和字符文字吗? 它在代码中工作,但我从良好实践的角度要求。C语言中的switch语句

switch(arg[1]) { 
    case '4': 
     printf("value is 4\n"); 
     break; 
    case '6': 
     printf("value is 6\n"); 
     break; 
    case 'M': 
     printf("value is M\n"); 
     break; 
    default: 
     break; 
} 
+0

胡佳'deafult'! – ouah 2014-09-24 18:45:07

+0

或者,你知道,'printf(“value is%c \ n”,arg [1])' – 2014-09-24 18:45:59

+2

单字符文字是一个数字,不像“非常短的字符串”。 – usr2564301 2014-09-24 18:46:08

回答

3

它可以在代码,但我是从良好做法的角度问。

是的,它的优良使用char变量和常量在switch语句。这是很常见的,例如,to process command line argumentschar是一个整数类型,而switchchar一样适用于任何其他整数类型。

+1

感谢这是我正在寻找。 – user1060517 2014-09-24 18:57:03