2009-11-12 16 views

risposta

8

Per gcc basta usare l'interruttore

gcc -E 
-E

-E arresto dopo la fase di pre-elaborazione; non eseguire correttamente il compilatore. L'output è sotto forma di codice sorgente preelaborato , che è inviato all'output standard.

+0

Per gli utenti MSVS, vedere questa vecchia domanda: http://stackoverflow.com/questions/1719234/see-what-the-preprocessor-is-doing – DarenW

7

Dipende dal compilatore. Con gcc, si usa:

gcc -E source.c 
+0

grazie, per la risposta veloce e accurata, avrei dovuto dire che ero ussing gcc. –

7

Solo una nota sulle intestazioni di sistema (ad es. <stdio.h>): sono un problema quando vengono elaborate.

gcc -E -nostdinc file.c o cpp -nostdinc file.c non include l'espansione delle intestazioni di sistema.

1

Eclipse C++ IDE (CDT) ha il controllo Macro Exploration, che può essere utilizzata per:

  • Ottenere finale espansione macro
  • Osservando tramite processo di espansione passo-passo

Questo si chiama controllo Macro Exploration.

Problemi correlati