C enum (felsorolás)

Ebben az oktatóanyagban példák segítségével megismerheti a C programozásban szereplő enumot (felsorolást).

A C programozásban a felsorolás típusa (más néven enum) olyan adattípus, amely integrál konstansokból áll. Az enums meghatározásához a enumkulcsszót használják.

 enum jelző (const1, const2,…, constN); 

Alapértelmezés szerint az const1 értéke 0, az const2 értéke 1 és így tovább. A deklaráció során megváltoztathatja az enum elemek alapértelmezett értékeit (ha szükséges).

 // Az enum konstansok alapértelmezett értékeinek megváltoztatása enum suit (klub = 0, gyémánt = 10, szív = 20, pikk = 3,);

Felsorolt ​​típusnyilatkozat

Enum típus definiálásakor létrejön a változó tervrajza. Így hozhat létre enum típusú változókat.

enum logikai (hamis, igaz); enum logikai ellenőrzés; // enum változó deklarálása

Itt enum booleanlétrehozzák a típus változó ellenőrzését .

Az enum változókat is deklarálhatja.

 enum logikai (hamis, igaz) ellenőrzés; 

Itt az értéke false0, az értéke pedig true1.

Példa: Felsorolás típusa

 #include enum week (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday); int main() ( // creating today variable of enum week type enum week today; today = Wednesday; printf("Day %d",today+1); return 0; ) 

Kimenet

 4. nap

Miért használnak enumokat?

Egy enum változó csak egy értéket vehet fel. Itt van egy példa annak bemutatására,

 #include enum suit ( club = 0, diamonds = 10, hearts = 20, spades = 3 ) card; int main() ( card = club; printf("Size of enum variable = %d bytes", sizeof(card)); return 0; ) 

Kimenet

 Az enum változó mérete = 4 bájt

Itt kapunk 4-et, mert a mérete int4 bájt.

Ez az ENUM jó választás a zászlókkal való együttműködésre.

Hogyan lehet az enumokat használni a zászlókhoz?

Vegyünk egy példát,

 enum designFlags ( ITALICS = 1, BOLD = 2, UNDERLINE = 4 ) button; 

Tegyük fel, hogy egy gombot tervez a Windows alkalmazáshoz. Beállíthatja az ITALICS, a BOLD és az UNDERLINE jelzőket a szöveg használatához.

Van egy oka annak, hogy az összes integrál konstans értéke 2 a fenti álkódban.

 // bináris ITALICS = 00000001 BOLD = 00000010 ALÁHúzás = 00000100 

Mivel az integrál konstansok 2-es hatványok, két vagy több jelzőt kombinálhat egyszerre átfedés nélkül a bitenkénti VAGY | operátor. Ez lehetővé teszi, hogy egyszerre két vagy több zászlót válasszon. Például,

 #include enum designFlags ( BOLD = 1, ITALICS = 2, UNDERLINE = 4 ); int main() ( int myDesign = BOLD | UNDERLINE; // 00000001 // | 00000100 // ___________ // 00000101 printf("%d", myDesign); return 0; ) 

Kimenet

 5.

Ha a kimenet 5, akkor mindig tudja, hogy félkövér és aláhúzás szerepel.

Emellett hozzáadhat zászlókat az Ön igényei szerint.

 if (myDesign & ITALICS) (// dőlt betűs kód)

Itt dőlt betűvel egészítettük ki a tervünket. Megjegyzés: csak a dőlt betűs kódot írják az ifutasításba.

A C programozásban szinte bármit meg lehet valósítani felsorolás használata nélkül. Bizonyos helyzetekben azonban nagyon hasznosak lehetnek.

érdekes cikkek...