C enum (surašymas)

Šioje pamokoje su pavyzdžių pagalba sužinosite apie C programavimą.

Programuojant C, surašymo tipas (dar vadinamas enum) yra duomenų tipas, susidedantis iš integralinių konstantų. Apibrėžti enums, naudojamas enumraktinis žodis.

 enum vėliava (const1, const2,…, constN); 

Pagal numatytuosius nustatymus const1 yra 0, const2 yra 1 ir pan. Deklaravimo metu galite pakeisti numatytąsias „enum“ elementų vertes (jei reikia).

 // Numatytų verčių konstantų reikšmių keitimas enum suit (klubas = 0, deimantai = 10, širdys = 20, kastuvai = 3,);

Surašyta tipo deklaracija

Kai apibrėžiate enum tipą, sukuriamas kintamojo projektas. Štai kaip galite sukurti enum tipų kintamuosius.

enum loginis (klaidingas, tikras); enum loginis patikrinimas; // deklaruojame enum kintamąjį

Čia sukuriamas kintamasis tipo patikrinimas enum boolean.

Taip pat galite paskelbti tokius „enum“ kintamuosius.

 enum loginis (klaidingas, tikras) patikrinimas; 

Čia reikšmė falselygi 0, o reikšmė truelygi 1.

Pavyzdys: Surašymo tipas

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

Rezultatas

 4 diena

Kodėl vartojamos sąskaitos?

„Enum“ kintamasis gali turėti tik vieną reikšmę. Štai pavyzdys, kaip tai parodyti,

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

Rezultatas

 Enum kintamojo dydis = 4 baitai

Čia gauname 4, nes dydis intyra 4 baitai.

Dėl to enumas yra geras pasirinkimas dirbti su vėliavomis.

Kaip naudoti vėliavų sąskaitas?

Paimkime pavyzdį,

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

Tarkime, kad kuriate mygtuką „Windows“ programai. Galite nustatyti žymes „ITALICS“, „BOLD“ ir „Underline“, kad jos dirbtų su tekstu.

Yra priežastis, kodėl visos integralinės konstantos yra 2 galia aukščiau esančiame pseudokode.

 // Dvejetainiais dažais ITALICS = 00000001 BOLD = 00000010 POŽYMIS = 00000100 

Kadangi integralų konstantos yra 2 galia, galite sujungti dvi ar daugiau žymių vienu metu, nepersidengdami, naudodami bitų kryptį ARBA | operatorius. Tai leidžia jums pasirinkti dvi ar daugiau vėliavų vienu metu. Pavyzdžiui,

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

Rezultatas

 5

Kai išvestis yra 5, visada žinote, kad naudojama paryškinta ir pabraukta.

Be to, galite pridėti žymes pagal savo reikalavimus.

 if („myDesign & ITALICS“) (// kursyvo kodas)

Čia mes įtraukėme kursyvą į savo dizainą. Atkreipkite dėmesį, į ifteiginį įrašomas tik kursyvo kodas .

C programavime galite beveik viską atlikti nenaudodami išvardijimų. Tačiau tam tikrose situacijose jie gali būti gana patogu.

Įdomios straipsniai...