Ich weiß, dass variadic Makros in C99 hinzugefügt wurden (und über GNU-Erweiterungen). Ich habe mich gefragt, ob es in ANSI C eine nette Alternative gibt.
Ich habe mir so etwas ausgedacht, aber es ist immer noch irgendwie peinlich:
%Vor%Damit kann man das so nennen:
%Vor%Es ist nichts falsch an diesem Ansatz, aber ich frage mich, ob es eine schönere Art ist, es zu tun? Z.B. ohne Notwendigkeit, Datei / Zeile jedesmal anzugeben.
Ich würde mich über Feedback freuen. :)
Edit: Mit ANSI C meine ich hier C89.
Bearbeiten: Die Antwort unten ist in Ordnung, aber ich glaube, da es die Ausführung des Druckbefehls Twise erfordert, kann es einige Thread-Sicherheitsprobleme auferlegen, wie es ist. Eine andere Alternative könnte sein, define zu verwenden, um das Tippen zu minimieren (auch ziemlich hässlich):
%Vor%und dann den Befehl wie folgt ausführen:
%Vor%Es ist ein wenig hässlich, aber eine Folge von durch Kommas getrennten Ausdrücken in Klammern kann als einzelnes Argument behandelt werden.
Ein Beispiel:
%Vor%Die Ausgabe:
%Vor%Beachten Sie, dass dies zusätzliche Klammern im Aufruf erfordert.
Tags und Links c c89 variadic-macros