Мне интересно, как я могу условно определить макросы функций. Например, предположим, что у меня есть макрос функции SETBIT
. Я хотел бы определить свою собственную версию, если кто-то, использующий мою библиотеку, не будет содержать отдельный заголовочный файл, где такая макрофункция уже была бы определена. Причиной этого является мобильность среди разных компиляторов.Условное определение макросов функции C
Так, я знаю, что я могу сделать это с помощью констант следующим образом:
#ifndef X
#define X 10
#endif
Я хотел бы сделать что-то подобное с функцией макросъемки
#ifndef SETBIT
#define SETBIT(port,bit) ((port) |= (1 << (bit)))
#endif
Однако, я не верю это сработает.
Да, это действительно сработало. Думаю, я подумал, что мне нужны «параметры функции» где-то. DOH! – audiFanatic