¿Cómo veo un archivo fuente C/C++ después del preprocesamiento en Visual Studio?
Digamos que tengo un archivo fuente con muchas directivas de preprocesador. ¿Es posible ver cómo se ve una vez que el preprocesador haya terminado?
cl.exe
, la interfaz de línea de comandos de Microsoft Visual C++, tiene tres opciones diferentes para generar el archivo preprocesado (de ahí la inconsistencia en las respuestas anteriores sobre Visual C++):
/E
: preproceso a stdout (similar a la opción -E de GCC)/P
: preprocesar para archivar/EP
: preprocesar a stdout sin directivas #line
Si desea preprocesar un archivo sin directivas #line, combine las opciones /P
y /EP
.
La mayoría de los compiladores tienen la opción de ejecutar simplemente el preprocesador. por ejemplo , gcc proporciona -E:
-E Stop after the preprocessing stage; do not run the compiler proper.
The output is in the form of preprocessed source code, which is sent
to the standard output.
Entonces puedes simplemente ejecutar:
gcc -E foo.c
Si no puede encontrar dicha opción, también puede encontrar el preprocesador C en su máquina. Generalmente se llama cpp y probablemente ya esté en su camino. Invocalo así:
cpp foo.c
Si hay encabezados que necesita incluir desde otros directorios, puede pasar -I/path/to/include/dir a cualquiera de ellos, tal como lo haría con una compilación normal.
Para Windows, dejaré que otros usuarios proporcionen respuestas, ya que no soy un experto en eso.