/QIfist (Suprimir _ftol)

Suprime la llamada de la función auxiliar _ftol cuando se requiere la conversión de un tipo de punto flotante a un tipo entero.

/QIfist

Comentarios

Nota

/QIfist solo está disponible en el compilador con destino en x86; esta opción del compilador no está disponible en los compiladores con destino en x64 o ARM.

Además de realizar la conversión de un tipo de punto flotante a un tipo entero, la función _ftol garantiza que el modo de redondeo de la unidad de punto flotante (FPU) se hace a cero (se trunca) mediante el establecimiento de los bits 10 y 11 de la palabra de control. Esto garantiza que la conversión de un tipo de punto flotante en tipo entero se realiza como se describe en la norma ANSI C (la parte fraccionaria del número se descarta). Si se utiliza /QIfist, esta garantía ya no es aplicable. El modo de redondeo será uno de los cuatro documentados en los manuales de referencia de Intel:

  • Redondeo al más próximo (número par si está equidistante)

  • Redondeo a infinito negativo

  • Redondeo a infinito positivo

  • Redondeo a cero

Puede utilizar la función en tiempo de ejecución _control87, _controlfp, __control87_2 de C para modificar el comportamiento de redondeo de la FPU. El modo de redondeo predeterminado de la FPU es "Redondeo al más próximo". El uso de /QIfist puede mejorar el rendimiento de la aplicación, pero no está exento de riesgo. Compruebe exhaustivamente las partes del código que sean sensibles al modo de redondeo antes de lanzar un código compilado con /QIfist a los entornos de producción.

Las opciones /arch (x86) y /QIfist no se pueden utilizar en la misma operación de compilación.

Nota

/QIfist no está en vigor de manera predeterminada, ya que los bits de redondeo también afectan al redondeo de punto flotante a punto flotante (que se produce después de cada cálculo), de modo que, cuando se establecen las marcas para redondeo de estilo C (a cero), los cálculos de punto flotante podrían ser diferentes./QIfist no debe usarse si el código depende del comportamiento esperado de truncar la parte fraccionaria del número de punto flotante.Si no está seguro, no use /QIfist.

/QIfist está desusada. Se han realizado mejoras importantes en el compilador en cuanto a la velocidad de conversión de los tipos float a int. Para obtener más información, vea Deprecated Compiler Options.

Para establecer esta opción del compilador en el entorno de desarrollo de Visual Studio

  1. Abra el cuadro de diálogo Páginas de propiedades del proyecto. Para obtener información detallada, vea Cómo: Abrir páginas de propiedades del proyecto.

  2. Haga clic en la carpeta C/C++.

  3. Haga clic en la página de propiedades Línea de comandos.

  4. Escriba la opción del compilador en el cuadro Opciones adicionales.

Para establecer esta opción del compilador mediante programación

Vea también

Referencia

/Q (Opciones) (Operaciones de bajo nivel)

Opciones del compilador

Establecer las opciones del compilador