This document presents a solution for mapping enumerations to strings in C code in a way that is robust to changes. The author proposes defining (number, name) pairs for enum values in a separate header file using macros. The macros are expanded differently in header and source files to populate the enum numbers and string names arrays respectively. This avoids issues with separate definition of numbers and names and maintains a clean 1:1 mapping. The approach works by defining macros that expand to either the number or name based on the file type for robust and synchronized definition of the enumeration mapping.