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.

Opciones de comandos #pragma o GCC.

Si el compilador tiene algunas banderas de línea de comando y el código tiene algunas pragmas, que son incompatibles con esas banderas, ¿cuál se utilizará?

Para ser más claro: estoy compilando con g++ -g -O2 -std=gnu++17 -static {files} – versión de GCC g++ (Ubuntu 9.3.0-10ubuntu2) 9.3.0.

Si escribo en mi código #pragma GCC optimize("Ofast"), ¿se compilará el código final con -O2 o con -Ofast?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El código final será compilado con -Ofast. Esto es porque la pragma sobrescribe la bandera de línea de comando -O2. Las pragmas son instrucciones para el compilador y pueden anular ciertas banderas de línea de comando o configuraciones predeterminadas. En este caso, la #pragma GCC optimize("Ofast") instruye específicamente al compilador a optimizar el código para la ejecución más rápida posible, mientras que la bandera -O2 activa un nivel menos agresivo de optimización.

Comments are closed.