es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Forzar el archivo a ser compilado como C, utilizando una directiva desde el propio archivo.

Tengo algunos archivos de código antiguos en mi proyecto de C++, que necesitan ser compilados como código C – toda la base de código está configurada para compilar como C++.
Estoy usando Visual Studio, pero preferiría evitar configurar esto por archivo desde las propiedades del proyecto, y preferiría utilizar algún tipo de directiva #pragma (si es posible).

He buscado por todos lados, pero no encontré nada, lo más cercano en lo que pude pensar es agregar un #ifdef, que verifique __cplusplus y falle si es verdadero.

Básicamente, estoy buscando una forma de insertar los comandos /Tc, /Tp, /TC, /TP (Especificar tipo de archivo fuente) desde el código fuente.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en C++, C y Visual Studio, recomiendo utilizar una directiva #ifdef para verificar __cplusplus y fallar si está presente, como la alternativa más cercana al uso de directivas #pragma para compilar archivos de código C antiguos en un proyecto de C++. Sin embargo, si prefieres utilizar directivas #pragma, puedes probar la opción /Tc para especificar el tipo de archivo fuente como C en lugar de C++, o la opción /TC para compilar todos los archivos fuente como C, en lugar de especificarlo por archivo en las propiedades del proyecto. Estas opciones se pueden agregar en la configuración del proyecto, o directamente en los archivos fuente con directivas #pragma. Para especificar el tipo de archivo fuente como C++, puedes utilizar la opción /Tp o la opción /TP para compilar todos los archivos fuente como C++. Para obtener más información sobre estas opciones, puedes consultar la documentación de Microsoft.

Comments are closed.