Page 1 of 1

Was bedeutet ## __ va_args__?

Posted: 27 Jan 2025, 05:56
by Guest
Ich würde gerne wissen, was ## in dieser Makrodefinition bewirkt:

Code: Select all

#define debug(M, ...) fprintf(stderr,M "\n",##__VA_ARGS__)
Ich habe nach einer Antwort gegoogelt und die folgende gekommen. werden dem Makro gegeben. Also, wenn das Makro so aufgerufen wird < /p>

Code: Select all

debug("message");
Ohne Anführungszeichen wird es erweitert zu

Code: Select all

fprintf(stderr,"message");
< /code>
Nicht < /p>
fprintf(stderr,"message",);
Warum wird das Komma entfernt?