Thread Stringification: im Gnu C Präprozessor (12 answers)
Opened by betterworld at 2003-11-15 22:32

betterworld
 2003-11-15 22:58
#11564 #11564
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
[quote=esskar,15.11.2003, 21:49]du wirst es aber nicht schon bei der compilezeit merken können, da der compiler ja noch nicht weiß, ob rec jemals > MAX_RECURSIONS ist...[/quote]
Doch. Ich habe es wohl nicht ganz deutlich gesagt: Die if-Anweisung muss natuerlich zur Laufzeit ausgewertet werden. Was ich aber nicht zur Laufzeit haben moechte, ist die Konvertierung vom int zum String.
Ich moechte also praktisch zwei Makros haben, mit den Werten 40 und "40". Nur waere es ja dumm, die beide selbst zu schreiben. Ich habe es noch so versucht:
Code: (dl )
#define TOSTRING(x) #x

Aber dann wird TOSTRING(MAX_RECURSIONS) nicht etwa zu "40", sondern zu "MAX_RECURSIONS" :(

View full thread Stringification: im Gnu C Präprozessor