Как получить доступ к аргументам, когда переменный макрос вызывает функцию

#define myprintf(m_l, fmt...) \
              my_debug(instance, \
                      (uint8)DBG_TRACE_DETAIL, fmt)

'myprintf' gets called somewhere in the code like-



 myprintf(TRACE_LEVEL_6, "Doing %s\n", __FUNCTION__);

Ниже приведена реализация my_debug, как получить доступ к аргументам переменных, передаваемым в my_debug, потому что есть просто... вместо args... Я хочу передать все переменные args и строку формата (которая является 'fmt') отдельно Some_api() внутри my_debug. Приведенный ниже вызов Some_api неверен. Как это сделать без использования va_list?

void my_debug_fn(void *info, uint8 m_level, char *fmt, ...)
        {
            Some_api(fmt,##args);
        }

0 ответов

Другие вопросы по тегам