2014-09-24 4 views
0

다음 switch 문이 올바른지 확인하십시오. 한 스위치 문에서 상수와 문자를 사용할 수 있습니까? 코드에서 작동하지만 좋은 관행에서 묻습니다.switch 문을 C로 사용

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

+0

또는'printf ("값은 % c \ n", arg [1])입니다. –

+2

단일 문자 리터럴은 "매우 짧은 문자열"이 아닌 숫자입니다. – usr2564301

답변

3

그것은 코드에서 작동하지만 나는 좋은 사례 관점에서 요청하고 있습니다.

예, char 변수 및 상수를 switch 문에 사용하면됩니다. 예를 들어 to process command line arguments과 같이 매우 일반적입니다. char은 정수 유형이며 다른 정수 유형과 마찬가지로 도 char과 함께 작동합니다.

+1

감사합니다. – user1060517