Dodanie zera do instrukcji preprocesora
Przeglądając niektóre pliki nagłówkowe c (w szczególnościstdarg.h
), Zauważyłem bardzo osobliwą linię:
#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L
Dziwna część to+ 0
. Zero to tożsamość addytywna; to jedna z różnych metod matematycznych pisanianoop
.
Jaki cel ma dodanie zera w powyższej instrukcji preprocesora? Wiem, że tam jestwszystkie rodzaje dziwnej magii preprocesora tam, ale to wydaje się śmieszne.