Объединение строк с использованием препроцессора

можно ли объединить строки во время предварительной обработки?

Я нашел этот пример

#define H "Hello "
#define W "World!"
#define HW H W

printf(HW); // Prints "Hello World!"

Однако он не работает для меня - выводит «Hello», когда я использую gcc -std = c99

UPD Этот пример теперь работает. Однако является ли это нормальной функцией препроцессора c?

19
задан Vladimir Keleshev 24 February 2011 в 14:55
поделиться