A. 枚舉類型的變數如何使用
1、不同語言的枚舉定義關鍵字有所不,內容大致相同。
2、以為vb6為例,所謂枚舉變數,就是指用
Enum
類型定義的變數。變數和參數都可以定義為
Enum
類型。Enum
類型中的元素被初始化為
Enum
語句中指定的常數值。所賦給的值可以包括正數和負數,且在運行時不能改變。
例如:
Enum
SecurityLevel
IllegalEntry
=
-1
SecurityLevel1
=
0
SecurityLevel2
=
1
End
Enum
3、vb6枚舉量的使用方法:
Private
Enum
MyColor
red
=
&HFF&
green
=
&HFF00&
blue
=
&HFF0000
End
Enum
Private
Sub
Command1_Click()
Me.BackColor
=
MyColor.blue
Me.BackColor
=
blue
Dim
icolor
As
MyColor
icolor
=
blue
Me.BackColor
=
icolor
End
Sub
B. c語言枚舉用法
一、對枚舉型的變數賦值。
實例將枚舉類型的賦值與基本數據類型的賦值進行了對比:
方法1:先聲明變數,再對變數賦值
#include<stdio.h>
/*定義枚舉類型*/
enumDAY{MON=1,TUE,WED,THU,FRI,SAT,SUN};
voidmain()
{
/*使用基本數據類型聲明變數,然後對變數賦值*/
intx,y,z;
x=10;
y=20;
z=30;
/*使用枚舉類型聲明變數,再對枚舉型變數賦值*/
enumDAYyesterday,today,tomorrow;
yesterday=MON;
today=TUE;
tomorrow=WED;
printf("%d%d%d ",yesterday,today,tomorrow);
}
方法2:聲明變數的同時賦初值
#include<stdio.h>
/*定義枚舉類型*/
enumDAY{MON=1,TUE,WED,THU,FRI,SAT,SUN};
voidmain()
{
/*使用基本數據類型聲明變數同時對變數賦初值*/
intx=10,y=20,z=30;
/*使用枚舉類型聲明變數同時對枚舉型變數賦初值*/
enumDAYyesterday=MON,
today=TUE,
tomorrow=WED;
printf("%d%d%d ",yesterday,today,tomorrow);
}
方法3:定義類型的同時聲明變數,然後對變數賦值。
#include<stdio.h>
/*定義枚舉類型,同時聲明該類型的三個變數,它們都為全局變數*/
enumDAY{MON=1,TUE,WED,THU,FRI,SAT,SUN}yesterday,today,tomorrow;
/*定義三個具有基本數據類型的變數,它們都為全局變數*/
intx,y,z;
voidmain()
{
/*對基本數據類型的變數賦值*/
x=10;y=20;z=30;
/*對枚舉型的變數賦值*/
yesterday=MON;
today=TUE;
tomorrow=WED;
printf("%d%d%d ",x,y,z);//輸出:102030
printf("%d%d%d ",yesterday,today,tomorrow);//輸出:123
}
方法4:類型定義,變數聲明,賦初值同時進行。
#include<stdio.h>
/*定義枚舉類型,同時聲明該類型的三個變數,並賦初值。它們都為全局變數*/
enumDAY
{
MON=1,
TUE,
WED,
THU,
FRI,
SAT,
SUN
}
yesterday=MON,today=TUE,tomorrow=WED;
/*定義三個具有基本數據類型的變數,並賦初值。它們都為全局變數*/
intx=10,y=20,z=30;
voidmain()
{
printf("%d%d%d ",x,y,z);//輸出:102030
printf("%d%d%d ",yesterday,today,tomorrow);//輸出:123
}
2、對枚舉型的變數賦整數值時,需要進行類型轉換。
#include<stdio.h>
enumDAY{MON=1,TUE,WED,THU,FRI,SAT,SUN};
voidmain()
{
enumDAYyesterday,today,tomorrow;
yesterday=TUE;
today=(enumDAY)(yesterday+1);//類型轉換
tomorrow=(enumDAY)30;//類型轉換
//tomorrow=3;//錯誤
printf("%d%d%d ",yesterday,today,tomorrow);//輸出:2330
}
3、使用枚舉型變數
#include<stdio.h>
enum
{
BELL='a',
BACKSPACE='',
HTAB=' ',
RETURN=' ',
NEWLINE=' ',
VTAB='v',
SPACE=''
};
enumBOOLEAN{FALSE=0,TRUE}match_flag;
voidmain()
{
intindex=0;
intcount_of_letter=0;
intcount_of_space=0;
charstr[]="I'mElyefod";
match_flag=FALSE;
for(;str[index]!='