2016-02-18 4 views
9

Es scheint Eclipse allows user to "see the expansion Step-by-Step" by pressing F2.Wie kann man Makro-Erweiterungen Schritt für Schritt sehen?

Ich mag dieses tolle Feature. Aber kann ich das gleiche mit nur gcc oder clang (oder einem anderen Tool) tun?

-E Option macht alle Makros vollständig erweitert. Also habe ich keine alternative Möglichkeit gefunden, Makros Schritt für Schritt zu erweitern.

Eclipse ist groß. Ich hoffe, ich muss es nicht überall installieren und es muss ständig gestartet werden.

+0

'-E' Option ist für gcc. Ich verstehe nicht ganz, welche Alternative du willst. – ameyCU

+0

@ameyCU Ich möchte einen leichten Weg, um die Schritt-für-Schritt-Erweiterung zu sehen, wie die Funktion in Eclipse – cshu

Antwort

1

Es ist eine Funktion in Eclipse integriert. Wenn ein solches Tool als Teil der GCC- oder Clang-Toolchain bereitgestellt wurde, hätte Eclipse keine Notwendigkeit, es zu implementieren. Ein solches Merkmal könnte als eine Erweiterung für GCC unter Verwendung von MELT implementiert werden. LLVM (zu dem Clang gehört) ist so konstruiert, dass es so etwas trivial macht.

Eine Sache, die Sie beachten müssen, dass Makroexpansion ein schwieriges Geschäft ist. Zu jedem Zeitpunkt kann sich eine Makrodefinition ändern oder gar nicht existieren. Theoretisch könnten Sie gdb (der Debugger, der mit GCC geliefert wird) verwenden, um durch Ihr Programm zu gehen, um Makroerweiterungen an verschiedenen Stellen im Programm zu sehen. Wenn Sie möchten, könnten Sie versuchen, ein gdb Plugin in Python zu schreiben.

Verwandte Themen