Alex Rivera | Logout

Is it legal to have duplicate enum values in C?

Asked 2011-04-06T03:30:54.267
22
enum protocol {
    ascii_prot = 3, /* arbitrary value. */
    binary_prot,
    negotiating_prot = 4 /* Discovering the protocol */
};

Both binary_prot and negotiating_prot equals to 4?

Edit
Report

1 Answer

6

Yes; C is not particular about enum values. Why you might do that is another question, unless there's some reason to treat the discovery packet the same as data packets. (Which there might well be when someone else designed the protocol and you want to stick as closely as possible to their documentation.)

answered 2011-04-06T03:36:56.873

Your Answer