В вашем примере PI
- это и макрос, и идентификатор. «Идентификатор» - это грубо говоря формальный термин для синтаксиса, который определяет имя. Макросы, функции, пространства имен, типы, переменные имеют имена, и все эти имена указываются с использованием идентификаторов. Из контекста должно быть ясно, подразумевается ли PI
как макрос или как идентификатор:
Вышеуказанное определяет PI
как 3.1416
.
Здесь он используется для обозначения макроса.
PI
после #define
указывает имя макроса.
Здесь он используется для ссылки на идентификатор: он используется для ссылки на два символа в исходном коде, которые определяют имя макроса.