| ??? 10/25/11 08:34 Read: times  | 
#184354 - Intelligence Responding to: ???'s previous message  | 
The preprocessor is stupid. It is just a glorified automatic search/replace engine.
 The compiler, on the other hand, knows about data types. So a good compiler can generate warnings if you have a switch statement that misses handling of one or more enum values - it would not know anything if you used #define. Since enum represents data types, you can specify these data types when you create variables or member fields of structures. If you program with #define, you must settle for char, int, ... as data type. But a field of type "unsigned char" does not tell the reader that the field is expected to only contain valid action types. A field of type "Action" will tell the developer what is expected. And will allow the compiler to generate a warning if you try to assign a value not part of the "Action" enumeration.  | 
| Topic | Author | Date | 
| User entered recipes ??? | 01/01/70 00:00 | |
| Just create array of regular rules | 01/01/70 00:00 | |
| Thanks - that's great | 01/01/70 00:00 | |
| programming language | 01/01/70 00:00 | |
| programming language - not really | 01/01/70 00:00 | |
| consider enum | 01/01/70 00:00 | |
| thanks - implemented. | 01/01/70 00:00 | |
| Intelligence | 01/01/70 00:00 | |
| I must have a stupid compiler | 01/01/70 00:00 | |
| Not all compilers are as good at generate warnings | 01/01/70 00:00 | |
| no warning/error on the compiler | 01/01/70 00:00 | |
| response from Raisonance | 01/01/70 00:00 | |
| enumerations on 8051 | 01/01/70 00:00 | |
| enums are 8bit by default on Raisonance | 01/01/70 00:00 | |
| NULL | 01/01/70 00:00 | |
| Could you show me the code | 01/01/70 00:00 | |
| compatibility et al | 01/01/70 00:00 | |
| why change pointer to CODE? | 01/01/70 00:00 | |
| enum advantage | 01/01/70 00:00 | |
| user page does not work (at least for me) | 01/01/70 00:00 | |
| try it now | 01/01/70 00:00 | |
| re: enumerations on 8051 | 01/01/70 00:00 | |
   Article on Hierarchical Menu Structure        | 01/01/70 00:00 | 



