C enum (uzskaitījums)

Šajā apmācībā jūs uzzināsit par enum (uzskaitījumu) C programmēšanā, izmantojot piemērus.

C programmēšanā uzskaitījuma tips (saukts arī par enum) ir datu tips, kas sastāv no neatņemamām konstantēm. Lai definētu enums, enumtiek izmantots atslēgvārds.

 enum karogs (const1, const2,…, constN); 

Pēc noklusējuma const1 ir 0, const2 ir 1 un tā tālāk. Deklarēšanas laikā varat mainīt uzskaites elementu noklusējuma vērtības (ja nepieciešams).

 // Enum konstantu noklusējuma vērtību mainīšana enum suit (klubs = 0, dimanti = 10, sirdis = 20, lāpstas = 3,);

Uzskaitītā tipa deklarācija

Definējot uzskaites tipu, tiek izveidots mainīgā projekts. Lūk, kā jūs varat izveidot enum veidu mainīgos.

enum būla (nepatiesa, patiesa); enum būla pārbaude; // deklarējot enum mainīgo

Šeit tiek izveidota mainīga tipa pārbaude enum boolean.

Varat arī deklarēt šādus enum mainīgos.

 enum būla (nepatiesa, patiesa) pārbaude; 

Šeit vērtība falseir vienāda ar 0 un vērtība trueir vienāda ar 1.

Piemērs: uzskaitījuma veids

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

Rezultāts

 4. diena

Kāpēc tiek izmantotas enums?

Enum mainīgajam var būt tikai viena vērtība. Šeit ir piemērs, lai to parādītu,

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

Rezultāts

 Enum mainīgā lielums = 4 baiti

Šeit mēs iegūstam 4, jo lielums intir 4 baiti.

Tas padara enum labu izvēli darbam ar karodziņiem.

Kā karodziņiem izmantot enumus?

Ņemsim piemēru,

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

Pieņemsim, ka jūs veidojat pogu Windows lietojumprogrammai. Varat iestatīt karodziņus ITALICS, BOLD un Underline, lai tie darbotos ar tekstu.

Ir iemesls, kāpēc visas neatņemamās konstantes ir 2 jauda iepriekš minētajā pseidokodā.

 // Binārā ITALICS = 00000001 DROŠI = 00000010 PAMATOJUMS = 00000100 

Tā kā integrālo konstantu vērtība ir 2, varat apvienot divus vai vairākus karodziņus vienlaikus, nepārklājot, izmantojot bitu bitu OR | operators. Tas ļauj jums izvēlēties divus vai vairākus karodziņus vienlaikus. Piemēram,

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

Rezultāts

 5

Kad izeja ir 5, jūs vienmēr zināt, ka tiek izmantots treknrakstā un pasvītrojums.

Varat arī pievienot karodziņus atbilstoši savām prasībām.

 ja (myDesign & ITALICS) (// kursīvā kods)

Šeit mēs esam pievienojuši slīprakstu mūsu dizainam. Piezīme. Izrakstā ir ierakstīts tikai kursīva kods if.

C programmēšanā jūs varat paveikt gandrīz visu, neizmantojot uzskaitījumus. Tomēr noteiktās situācijās tie var būt diezgan ērti.

Interesanti raksti...