C enum (loetelu)

Selles õpetuses saate näidete abil teada C-programmeerimise loendist (loendist).

C-programmeerimisel on loenduse tüüp (nimetatakse ka loendiks) andmetüüp, mis koosneb integraalsetest konstantidest. Enumsi määratlemiseks kasutatakse enummärksõna.

 loenduslipp (const1, const2,…, constN); 

Vaikimisi on const1 0, const2 on 1 ja nii edasi. Deklaratsiooni ajal saate loendielementide vaikeväärtusi muuta (vajadusel).

 // loendikonstandide vaikeväärtuste muutmine enum suit (klubi = 0, teemandid = 10, südamed = 20, labidad = 3,);

Loendatud tüübideklaratsioon

Kui määrate loenditüübi, luuakse muutuja plaan. Nii saate luua loenditüüpide muutujaid.

enum boolean (vale, tõene); enum tõeväärtuse kontroll; // deklareerime enum muutuja

Siin luuakse tüübi muutuv kontroll enum boolean.

Samuti võite deklareerida niimoodi enum muutujaid.

 enum boolean (vale, tõene) kontroll; 

Siin on väärtus false0 võrdne ja väärtus trueon 1.

Näide: loenduse tüüp

 #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; ) 

Väljund

 4. päev

Miks kasutatakse enume?

Enum muutuja võib võtta ainult ühe väärtuse. Siin on näide selle demonstreerimiseks,

 #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; ) 

Väljund

 Loendi muutuja suurus = 4 baiti

Siin saame 4, kuna suurus inton 4 baiti.

See teeb enumile hea valiku lipudega töötamiseks.

Kuidas kasutada lippe lippude jaoks?

Võtame näite,

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

Oletame, et kujundate Windowsi rakenduse jaoks nuppu. Tekstiga töötamiseks saate määrata lipud ITALICS, BOLD ja UNDERLINE.

On põhjus, miks kõik integraalsed konstandid on ülaltoodud pseudokoodis 2 väärtus.

 // Binaarses vormis ITALICS = 00000001 BOLD = 00000010 ALAJoon = 00000100 

Kuna lahutamatu konstandi väärtus on 2, saate bitipõhise VÕI | abil kombineerida korraga kaks või enam lippu, kattumata. operaator. See võimaldab teil valida kaks või enam lippu korraga. Näiteks,

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

Väljund

 5

Kui väljund on 5, teate alati, et kasutatakse rasva ja allajoonimist.

Samuti saate vastavalt oma vajadustele lippe lisada.

 if (myDesign & ITALICS) (// kursiivikood)

Siin oleme lisanud oma kujundusele kursiivi. Pange tähele, et iflause sisse on kirjutatud ainult kursiivikood .

C-programmeerimises saate loendusi kasutamata teha peaaegu kõike. Kuid need võivad teatud olukordades olla üsna käepärased.

Huvitavad Artiklid...