Вопросы с тегом «stringification»

99
Прагма в макросе определения

Есть ли способ встроить оператор прагмы в макрос с другими операторами? Я пытаюсь добиться чего-то вроде: #define DEFINE_DELETE_OBJECT(type) \ void delete_ ## type_(int handle); \ void delete_ ## type(int handle); \ #pragma weak delete_ ## type_ = delete_ ## type Я согласен с решениями по усилению...

91
Объединить int в строку с помощью препроцессора C

Я пытаюсь понять, как я могу объединить #define'd int в #define' d строку с помощью препроцессора C. Мой компилятор - GCC 4.1 для CentOS 5. Решение также должно работать для MinGW. Я хотел бы добавить номер версии к строке, но единственный способ заставить его работать - это сделать копию номера...

88
Какие применения оператора препроцессора ## и какие ошибки следует учитывать?

Как упоминалось во многих моих предыдущих вопросах, я работаю через K&R, а сейчас занимаюсь препроцессором. Одна из наиболее интересных вещей - чего я никогда раньше не знал из своих предыдущих попыток изучить C - это ##оператор препроцессора. Согласно K&R: Оператор препроцессора ##...

84
Как именно работает трюк с двойной строкой?

По крайней мере, некоторые препроцессоры C позволяют вам преобразовать значение макроса в строку, а не его имя, передав его через один функционально-подобный макрос другому, который преобразовывает его в строку: #define STR1(x) #x #define STR2(x) STR1(x) #define THE_ANSWER 42 #define...