fp_contract
Determina se a contração do ponto flutuante ocorrerá.
#pragma fp_contract [ON | OFF]
Comentários
Por padrão, fp_contract é ativado.
Para obter mais informações sobre o comportamento do ponto flutuante, consulte /fp (especificar comportamento de ponto flutuante).
Outros pragmas de ponto flutuante incluem:
Exemplo
O código gerado deste exemplo não usa a instrução Fused Multiply Add (fma) em processadores Itanium. Se você comentar #pragma fp_contract (off), o código gerado usará a instrução fma.
// pragma_directive_fp_contract.cpp
// compile with: /O2
#include <stdio.h>
#include <float.h>
#pragma fp_contract (off)
int main() {
double z, b, t;
for (int i = 0; i < 10; i++) {
b = i * 5.5;
t = i * 56.025;
_set_controlfp(_PC_24, _MCW_PC);
z = t * i + b;
printf_s ("out=%.15e\n", z);
}
}