@Lundin: Хммм. Я получаю другое сообщение об ошибке с более новым GCC. Кажется, что не разрешено использовать аргументы с переменными значениями, но нельзя передавать аргументы с нулевым значением. Если это правда, добавление фиктивного аргумента работает. Я пытался использовать версию Visual Studio, по общему признанию, и она не компилируется вообще. (Это ничего не говорит о соответствии стандартам, хотя.)
я есть две функции foo1 (a, b) и foo2 (a, b, c) и макрос
#define add(a,b) foo(a,b)
Мне нужно переопределить макрос для достижения цели,
1. если add () вызывается с 2 параметрами, затем вызывается foo1
если add () вызывается с 3 параметрами, тогда вызывается foo2Я новичок в опции VA_ARGS. Как мне это сделать