2 回答
TA貢獻1827條經(jīng)驗 獲得超4個贊
首先你要清楚枚舉是什么東西。它的限制有什么。
枚舉值是常量,不是變量。不能在程序中用賦值語句再對它賦值。
枚舉并不能像數(shù)組那樣去修改成員的值。
你這種定義和說明方式來說,可以看出對枚舉的理解似乎不太對。
enum NOTES// 此處是定義,此處可以生命基礎類型 例如enum NOTES:int
{
C10=131,D10=147,E10=165,F10=175,G10=196,A10=220,B10=247,
C0=262,D0=296,E0=330,F0=349,G0=392,A0=440,B0=494,
C1=523,D1=587,E1=659,F1=698,G1=784,A1=880,B1=988,
C2=1047,D2=1175,E2=1319,F2=1397,G2=1568,A2=1760,B2=1976
}song[80];//此處是枚舉的說明。
下面有個實例,你可以看下,大致就能理解你的錯誤了。
main(){
enum weekday
{ sun,mon,tue,wed,thu,fri,sat } a,b,c;
a=sun;
b=mon;
c=tue;
printf("%d,%d,%d",a,b,c);
}
說明:只能把枚舉值賦予枚舉變量,不能把元素的數(shù)值直接賦予枚舉變量。如:
a=sum;
b=mon;
是正確的。而:
a=0;
b=1;
這個是不行的。
添加回答
舉報
