Compartilhar via


/ QIfist (Suprimir _ftol)

Suprime a chamada da função auxiliar _ftol quando uma conversão de um tipo de ponto flutuante para um tipo integral é necessária.

/QIfist

Comentários

ObservaçãoObservação

/QIfistsó está disponível no compilador x86; Esta opção de compilador não está disponível nos compiladores direcionamento x64 ou Itanium.

Para além de conversão de um tipo de ponto flutuante para o tipo integral, o _ftol função garante que o modo de arredondamento da unidade de ponto flutuante (FPU) é em direção a zero (truncate), definindo bits 10 e 11 do word de controle. Isso garante que a conversão de um tipo de ponto flutuante para um tipo integral ocorre conforme descrito pelo padrão ANSI C (a parte fracionária do número é descartada). Ao usar /QIfist, essa garantia não se aplica mais. O modo de arredondamento será um dos quatro documentado em manuais de referência da Intel:

  • Arredondar na direção (número par mais próximo se se)

  • Arredondar em direção ao infinito negativo

  • Arredondar em direção ao infinito positivo

  • Arredondar até zero

Você pode usar o _control87, _controlfp, __control87_2 a função C Run-Time para modificar o comportamento de arredondamento da FPU. O padrão que o modo de FPU de arredondamento é "Round em direção a mais próximo." Usando /QIfist pode melhorar o desempenho do seu aplicativo, mas não sem riscos. Você deve testar exaustivamente as partes do código que são sensíveis a modos de arredondamento, antes de confiar em código compilado com /QIfist em ambientes de produção.

/arch (arquitetura de CPU mínimo)e /QIfist não pode ser usado no mesmo compiland.

ObservaçãoObservação

/QIfistnão está em vigor por padrão porque o arredondamento bits também afetam flutuante ponto arredondamento (o que ocorre após cada cálculo), de ponto flutuante para que quando você define os sinalizadores para arredondamento do estilo C (em direção a zero), ponto flutuante seus cálculos podem ser diferentes. /QIfistnão deve ser usado se o seu código depende do comportamento esperado do truncando a parte fracionária do número de ponto flutuante. Se você não tiver certeza, não use /QIfist.

/QIfistestá obsoleto. O compilador fez melhorias significativas float à velocidade de conversão de int. Para obter mais informações, consulte Deprecated Compiler Options in Visual C++ 2005.

Para definir esta opção de compilador no ambiente de desenvolvimento Visual Studio

  1. Abra o projeto Property Pages caixa de diálogo. Para obter detalhes, consulte:Como: Abrir páginas de propriedades do projeto.

  2. Clique o C/C++ pasta.

  3. Clique na a linha de comando página de propriedades.

  4. Digite a opção de compilador no Opções adicionais de caixa.

Para definir esta opção de compilador programaticamente

Consulte também

Referência

/Q opções (operações de baixo nível)

Opções do compilador

Definindo opções do compilador