Chapter 9 Enumeration Types By C Shing ITEC

Chapter 9 Enumeration Types By C. Shing ITEC Dept Radford University

Objectives n Understand how to use enumerate data type Slide 2

Enumeration Type n List all member in a set n n Help internal documentation Declare data type enumerate_name n n Form: enumerate_name { member 1[=n 1], …, member. N} Default n 1=0, and increment by 1 for the next member Slide 3

Enumeration Type (Cont. ) Example: enum computer { supers, mains, minis, micro, pda}; typedef enum computer; computer c, d; c=mains; d= find_next_member (c); printcomputer(d); n computer find_next_member (computer c) { return (computer) (((int) c +1)%5); } Slide 4

Enumeration Type (Cont. ) Example: void printcomputer (computer c) { switch (c) { case supers: printf(“Supercomputern”; break; case mains: printf(“Main Framen”; break; case minis: printf(“Minicomputern”; break; case micro: printf(“Microcomputern”; break; case pda: printf(“Personal Digital Assistantn”; break; default: printf(“Error!n”); exit(1); } n Slide 5

Enumeration Type (Cont. ) Example: (Alternative) computer find_next_member (computer c) { switch (c) { case supers: return mains; break; case mains: return minis; break; case minis: return micro; break; case micro: return pda; break; case pda: return supers; break; default: printf(“Error!n”); exit(1); } n Slide 6

References Deitel & Deitel: C How to Program, 4 th ed. , Chapter 10, Prentice Hall n Slide 7
- Slides: 7