2010-06-01 14 views
15

estoy tratando de utilizar el preprocesador C el código no-C, y funciona bien, excepto por la creación de líneas de este tipo en la parte superior:¿Cómo eliminar las líneas agregadas por defecto por el preprocesador C a la parte superior de la salida?

# 1 "test.java" 
# 1 "<built-in>" 
# 1 "<command-line>" 
# 1 "test.java" 

El problema es que estas líneas no son válidos en Java. ¿Hay alguna manera de hacer que el preprocesador no escriba esto? Prefiero no tener que ejecutar esto a través de otra cosa para eliminar las primeras 4 líneas cada vez.

+2

Esa es la utilización más sucia del preprocesador de C que he visto ... Me gustaría que pensé de eso cuando estaba haciendo codificación Java. –

+0

Pensé que no había ninguna razón para que los codificadores de C se divirtieran mucho cuando se trataba de código ilegible. –

+1

Significado de esas líneas: http://stackoverflow.com/questions/5370539/what-is-the-meaning-of-lines -starting-with-a-hash-sign-and-number-like-1-ac –

Respuesta

22

Si está utilizando el preprocesador GCC:

-P Inhibit generation of linemarkers in the output from the 
     preprocessor. This might be useful when running the preprocessor 
     on something that is not C code, and will be sent to a program 
     which might be confused by the linemarkers. 

de la página hombre CPP gcc

+0

Bueno, eso fue fácil :) –

Cuestiones relacionadas