So far, I've got this
Expand|Select|Wrap|Line Numbers
- #define OPT_NONE 0
- #define OPT_1 1
- #define OPT_2 2
- ...
- #define OPT_7 64
- #define OPT_8 128
- #define OPT_ALL 255
- unsigned int result = OPT_NONE;
Expand|Select|Wrap|Line Numbers
- switch(user_entered_choice)
- {
- case OPT_NONE : result = OPT_NONE; break;
- case OPT_1 : result += OPT_1; break;
- ...
- case OPT_8 : result += OPT_8; break;
- }
- if(result == OPT_NONE)
- // default option selected
- else if(result == OPT_ALL)
- // all options selected
- else if(result == OPT_1 ... result == OPT_8) // not valid code
- // a single option 1 of 8 was selected
- else if(((result & OPT_1) == OPT_1) &&
- ((result & OPT_2) == OPT_2) ...
TIA