Enumerations (enum) in C Programming (Complete Guide with Examples)


This tutorial explains enumerations (enum) in C, which allow defining a set of named integer constants. It covers declaration, usage, and practical examples, helping beginners write more readable and maintainable code.

1. What is an Enumeration

  1. An enumeration is a user-defined data type that assigns names to integer constants.
  2. Helps make code readable and maintainable.

2. Syntax


enum enum_name { constant1, constant2, ..., constantN };
  1. By default, the first constant is 0, second is 1, and so on.
  2. You can assign custom values.

3. Example: Basic Enumeration


#include <stdio.h>

enum Day { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday };

int main() {
enum Day today;

today = Wednesday;

printf("Today is day number %d\n", today);

return 0;
}

Sample Output:


Today is day number 3

4. Example: Enumeration with Custom Values


#include <stdio.h>

enum Status { Pending = 1, Approved = 2, Rejected = 5 };

int main() {
enum Status s;

s = Approved;

printf("Status code: %d\n", s);

return 0;
}

Sample Output:


Status code: 2

5. Key Points to Remember

  1. enum creates named integer constants
  2. Improves code readability instead of using raw numbers
  3. Default values start from 0 but can be customized
  4. Can be used with variables, arrays, and switch statements
  5. Often combined with structures and unions for organized data representation