读书人

c,该如何解决

发布时间: 2013-06-26 14:29:32 作者: rapoo

c
# include<stdio.h>
int main(){
enum Color {red,yellow,blue,white,black};
enum Color i,j,k,p;
int n=0,l;
for(i=red;i<=black;i++)
for(j=red;j<=black;j++)
if(i!=j){
for(k=red;k<=black;k++){
if(k!=i && k!=j)
n++;
printf("%d\t",n);
for(l=1;l<3;l++){
switch(l){
case 1:p=i;break;
case 2:p=j;break;
case 3:p=k;break;
default :break;
}
switch(p){
case red:printf("%s\t","red");break;
case yellow:printf("%s\t","yellow");break;
case blue:printf("%s\t","blue");break;
case white:printf("%s\t","white");break;
case black:printf("%s\t","black");break;
default :break;
}
}
printf("\n");
}
}
printf("\n%d\n",n);
return 0;
}



--------------------Configuration: Cpp1 - Win32 Debug--------------------
Compiling...
Cpp1.cpp
C:\Users\acer\Desktop\C++\03\Cpp1.cpp(6) : error C2676: binary '++' : 'enum main::Color' does not define this operator or a conversion to a type acceptable to the predefined operator
C:\Users\acer\Desktop\C++\03\Cpp1.cpp(7) : error C2676: binary '++' : 'enum main::Color' does not define this operator or a conversion to a type acceptable to the predefined operator
C:\Users\acer\Desktop\C++\03\Cpp1.cpp(9) : error C2676: binary '++' : 'enum main::Color' does not define this operator or a conversion to a type acceptable to the predefined operator
执行 cl.exe 时出错.

Cpp1.exe - 1 error(s), 0 warning(s)





C
[解决办法]
enum 类型不能直接++
[解决办法]
i,j,k直接定义成int就行了,让编译器去自动转换去,枚举不支持自增操作

读书人网 >C++

热点推荐