このプログラムは、次のエラーを生成します。
case ラベルが整数定数にならない |
関数本体の内部でも明示的に宣言された定数third_cond
、割り当てられた初期化子が定数と見なされない理由を理解できません。同時に'd識別子は定数と見なされます。の代わりに、または単にとして。この質問が重複していない限り、その理由を説明してください。確認しましたが、答えが見つかりませんでした。3
case 3
#define
second_value
3
third_cond
#define
third_cond
3
#include<stdio.h>
#define second_cond 2
int main()
{
const int third_cond=3;
int choice;
printf("Enter your choice\n");
scanf("%d",&choice);
switch(choice)
{
case 1:
printf("Beggar");
break;
case second_cond:
printf("Mugger");
break;
case third_cond:
printf("Lugger");
break;
default:
printf("Bugger");
}
}