#include #include #include enum(char *) Colour { Red = "red", Green = "green", Blue = "blue" }; // enum( signed char ) srgb { Red = -1, Green = 0, Blue = 1 }; enum Plain { A, B, C = 10 }; int main () { Colour fishy; // posE() fishy = Colour.Green; // value(fishy) = Colour.Green; fishy; // valueE( fishy ); printf( "Compile Time: blue value: %s, position: %d, label: %s, default return value: %s \n", valueE(Colour.Blue), posE(Colour.Blue), labelE(Colour.Blue), Colour.Blue ); printf( "Runtime: fishy value: %s, position: %d, label: %s, default return value: %s\n", valueE(fishy), posE(fishy), labelE(fishy), fishy ); Colour c2 = fishy; printf( "Runtime: C2 value: %s, position: %d, label: %s, default return value: %s\n", valueE(c2), posE(c2), labelE(c2), c2 ); Colour.Red; char * ao = Colour.Red; char * ko = fishy; printf( "ao is %s\n", ao ); printf( "ko is %s\n", ko ); printf( "%d, %d, %d, \n", A, B, C ); Plain a = B; printf( "%d \n", a ); }