Uscita del preprocessore

Come visualizzare l’output prodotto dal pre-processore C , prima della sua conversione in un file object?

Voglio vedere cosa fanno le definizioni MACRO al mio codice.

gcc -E file.c 

o

 g++ -E file.cpp 

lo farò per te. Lo switch -E obbliga il compilatore a fermarsi dopo la fase di pre-elaborazione, sputando tutto ciò che ha attualmente in uscita sullo standard output.

Nota: Sicuramente devi avere alcune direttive #include. Anche i file inclusi vengono sottoposti a pre-elaborazione, quindi potresti ottenere molti risultati.

Per Visual C ++ l’interruttore è / E che sputa l’output del preprocessore sullo schermo.

Per GCC,

 gcc -E -dM file.c 

o

 g++ -E -dM file.cpp 

dovrebbe fare il lavoro -dM, come dice il manuale del preprocessore GNU, dovrebbe generare un elenco di direttive “#define” per tutte le macro definite durante l’esecuzione del preprocessore, incluse le macro predefinite.

Puoi anche chiamare direttamente il preprocessore C.

 cpp infile outfile 

Controlla man cpp per maggiori informazioni.

Dipende dal compilatore che usi.
Con GCC, è ansible specificare il flag -E sulla riga di comando per consentire al compilatore di produrre l’output del preprocessore.

Puoi controllare il mio script qui descritto:

http://mosermichael.github.io/cstuff/all/projects/2011/09/16/preprocessor.html

Formatta l’output del preprocessore in un documento html (si spera) leggibile: le righe che sono diverse a causa del preprocessore sono contrassegnate nel file.