I am trying to understand the difference between a typedef and define. There are a lot of good posts specially at this previous question on SO, however I can\'t understand the p
A preprocessor is an "engine" executed before the compiler compiles code.
#define #include
are preprocessor directives or macros, so the preprocessor engine executes code related to the directives. When the preprocessor is done the compiler sees nothing of the directives/macros.
However constructs such as typedef
, if
, while
etc.. are understood by the compiler.