Do najważniejszych dyrektyw należą: #include … – dyrektywa włączająca tekst innego pliku źródłowego w miejscu jej wystąpienia w pliku podlegającym aktualnie przetwarzaniu, przy czym możliwe jest zagłębione występowanie dyrektywy include, #define … – definiuje stałe i makroinstrukcje (pseudofunkcje) #undef … – usuwa definicje stałej lub makra #if … – dyrektywy kompilacji warunkowej #elif … – działa podobnie jak else if w języku C #endif … – oznacza koniec bloku kompilacji warunkowej #ifdef … – znaczy to samo co #if defined(…) #ifndef … – znaczy to samo co #if !defined(…) i inne.

Dyrektywy preprocesora C/C++ wykorzystuje się często do zabezpieczenia plików nagłówkowych przed wielokrotnym dołączaniem do tego samego projektu. Jeżeli treść pliku nagłówkowego nazwa.h obejmie się instrukcjami:

#ifndef _NAZWA_H_ /* (1) */ #define _NAZWA_H_ /* (2) */

/* ... treść właściwa ...(to co chcesz definiować np.