Операторы препроцессора
 
Операторы, которые выполняются препроцессором

Эти операторы контролировать то, как текст интерпретируется препроцессором.

Оператор # (Stringize)
Возвращает текстовое представление операнда в String представление.
Оператор ## (Конкатенация)
Объединяет два текстовых операнда.
Оператор ! (Строковый литерал, задающий определяющие последовательности )
Указывает, что в строке должны обрабатываться управляющие последовательности.
Оператор $ (Строковый литерал отключающий управляющие последовательности)
Указывает, что в строке не должны обрабатываться управляющие последовательности.