| Форум РадиоКот https://radiokot.ru/forum/ |
|
| Макросы[РЕШЕНО] https://radiokot.ru/forum/viewtopic.php?f=59&t=98610 |
Страница 1 из 1 |
| Автор: | gruffi [ Чт дек 26, 2013 14:08:56 ] |
| Заголовок сообщения: | Макросы[РЕШЕНО] |
Добрый день, форумчане! Есть вот такой макрос: Код: #define PIN_SOUND_PIN 0 #define PIN_ENABLE(GPIOx, PIN) GPIOx->BSRR |= GPIO_BSRR_BS##PIN при вызове: Код: PIN_ENABLE(GPIOA, SOUND_PIN); В Visual Studio работает, а в eclipse ругается, т.е. он склеивает строку как GPIO_BSRR_BSSOUND_PIN. Как сделать, чтобы подставлялось числовое значение, а не строковое? |
|
| Автор: | gruffi [ Чт дек 26, 2013 15:53:52 ] |
| Заголовок сообщения: | Re: Макросы |
Тему можно закрывать, уже подсказали. Если кому будет интересно: To get the macro to expand, a second level of indirection is required, as shown by this compliant solution: #define JOIN(x, y) JOIN_AGAIN(x, y) #define JOIN_AGAIN(x, y) x ## y |
|
| Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|


