1#define is a C preprocessor directive used to define macros. ... The preprocessor directives are used to provide general instruction or required data which is used inside a program. A macro is a block of code which has been given a name. Any occurance of that name is replaced by the value of the macro.