
GCC 6.1 GNU CPP Reference Manual
Preprocesor języka C, często znany jako cpp, to procesor makr, który jest automatycznie używany przez kompilator języka C do przekształcania programu przed kompilacją.
Nazywa się go procesorem makr, ponieważ umożliwia definiowanie makr, które są krótkimi skrótami dla dłuższych konstrukcji. Preprocesor C jest przeznaczony do użycia tylko z kodem źródłowym C, C++ i Objective-C.
W przeszłości był on nadużywany jako ogólny procesor tekstu. Będzie on dławił się na wejściu, które nie jest zgodne z regułami leksykalnymi C. Na przykład apostrofy będą interpretowane jako początek stałych znakowych i będą powodować błędy.
Nie można również polegać na tym, że zachowa cechy wejścia, które nie są istotne dla języków z rodziny C. Jeśli plik Makefile zostanie wstępnie przetworzony, wszystkie twarde tabulatory zostaną usunięte, a plik Makefile nie będzie działał.