Als «c-preprocessor» getaggte Fragen

109
C / C ++ - Zeilennummer

Kann ich zum Zwecke des Debuggens die Zeilennummer in C / C ++ - Compilern abrufen ? (Standardmethode oder spezielle Methoden für bestimmte Compiler) z.B if(!Logical) printf("Not logical value at line number %d \n",LineNumber); // How to get LineNumber without writing it by my hand?(dynamic...

103
Komma im C / C ++ - Makro

Angenommen, wir haben ein solches Makro #define FOO(type,name) type name Was wir gerne gebrauchen könnten FOO(int, int_var); Aber nicht immer so einfach: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 Natürlich könnten wir tun: typedef...

100
Makro vs Funktion in C.

Ich habe immer Beispiele und Fälle gesehen, in denen die Verwendung eines Makros besser ist als die Verwendung von Funktionen. Könnte mir jemand anhand eines Beispiels den Nachteil eines Makros gegenüber einer Funktion

99
#Defines einrücken

Ich weiß, dass #defines usw. normalerweise nie eingerückt werden. Warum? Ich arbeite gerade in einem Code, der eine schreckliche Mischung aus #defines, #ifdefs, #elses, #endifs usw. enthält. All dies wird oft mit normalem C-Code gemischt. Das Nichteinrücken des #defines macht sie schwer lesbar....