функциональный макрос против макросов
gcc (GCC) 4.7.2
c89
Привет,
Я просматривал набор тестов и заметил, что этот функциональный макрос объявлен так:
#define MU_SUITE_START() char *msg = NULL
Однако есть ли реальная разница в том, чтобы делать это вместо этого:
#define MU_SUITE_START char *msg = NULL
Макросы просто заменяют текст, поэтому я неНе думаю, что возникнут какие-либо проблемы с производительностью.
Используя cpp, я получаю следующие результаты, так что ничего особенного здесь нет.
функциональный макрос
char *msg = __null;
марко
char *msg = __null;
Просто примечание: стоит ли объявлять маркообразную функцию, которая нене указывать во входных параметрах? Здесь я не передаю никаких параметров, т.е.
#define PRINT_MSG() printf("This is the message\n")
Зачем беспокоиться о функционально-подобном макросе, если нет входных параметров?это лучше?
#define PRINT_MSG printf("This is the message\n")
Большое спасибо за любые предложения,