Что за стиль конкатенации? "xxx""xxx"

const char* a = "3""3";
cout << a << endl; //33

Что это за стиль такой,впервые увидел.Почему так можно и что происходит при такой конкатенации?


Ответы (1 шт):

Автор решения: dIm0n

Да, можно. Получится один строковый литерал. "a""b" означает то же, что и "ab" для программиста, потому что конкатенация происходит после препроцессинга, но до непосредственно компиляции, так что на этап, ответственный за появление translation unit, придёт один и тот же литерал.

Обычно это используют для длинных литералов, которые не умещаются в ограничение на длину строки IDE, либо для логического структурирования кода.

→ Ссылка