Can't get right amount of arguments passes to function call
I have tried to use macros to get exact amount of arguments and it seems gets wrong when I call the function w/o arguments at all.
#include <stdio.h>
#define _ARG2(_0, _1, _2, ...) _2
#define NARG2(...) _ARG2(__VA_ARGS__, 2, 1, 0)
int main (void){
printf ("The result of NARG2() is %d\n",NARG2());//1?
return 0;
}
I expect NARG2 outputs 0