If I define some macro:

#define foo(args...) ({/*do something*/})

Is there some way to actually loop through args rather than pass it along to another function? Something like

#define foo(args...) \
        { \
           for (int i = 0; i < sizeof(args); ++i) { \
             /*do something with args[i]*/ \
           } \
         }
Edit
Report