发布网友 发布时间:2022-04-23 12:31
共1个回答
热心网友 时间:2022-05-05 05:41
1、switch函数只能对整数类型的变量进行枚举,而字符串类型不属于整型变量。因此,必须对字符串进行转化。根据不同的字符串比较结果,执行不同的操作。
2、例程:
假如有这几个固定的字符串"string1","string2",..."stringn",可以做这种变换:
char str[100]="..."//假设已经赋值了
int i=0;
char str1[]="string1",str2[]="string2",str3[]="string3";//可以任意设
if(strcmp(str,str1)==0)//比较,如果str数组中存的刚好是字符串string1,下面同理,
i=1;
else if(strcmp(str,str2)==0)
i=2;
else if(strcmp(str,str3)==0)
i=3;
else
i=4;
//这样就映射出来了,用i的值,来映射不同的str
switch(i)
{
case 1:
...
break;
case 2:
...
break;
case 3:
...
break;
case 4:
...
break;
dafault:
....
break;
}