/QIfist (Suppress _ftol)
Запрещает вызов функции помощника _ftol, когда требуется преобразование из типа с плавающей запятой в интегральный тип.
/QIfist
Заметки
![]() |
---|
Параметр /QIfist доступен только в компиляторе целевого x86; параметр этого компилятора недоступен в целевых компиляторах x64 или Itanium. |
Кроме преобразования из типа с плавающей запятой в интегральный тип, функция _ftol включает режим округления единицы измерения с плавающей запятой (FPU) до ближайшего меньшего по модулю (усечение), задав биты 10 и 11 контрольного слова.Это обеспечивает соответствие преобразования из типа с плавающей запятой в интегральный тип, описанного стандартом ANSI C (дробная часть числа отбрасывается).При использовании /QIfist гарантия не предоставляется.Режим округления будет одним из четырех, перечисленных в справочных руководствах Intel:
Округление до ближайшего значения (даже если число равноудаленное)
Округление до самого маленького отрицательного значения
Округление до самого маленького положительного значения
Округление до нуля
Можно использовать функцию _control87, _controlfp, __control87_2 C Run-Time для изменения поведения округления FPU.Режим округления по умолчанию FPU "Округление до ближайшего значения". Использование /QIfist может повысить производительность приложения, но при этом существует риск.Требуется тщательно проверить часть кода, чувствительную к режимам округления, перед ссылкой на код, построенный в производственных средах /QIfist.
Параметры /arch (x86) и /QIfist нельзя использовать для одного и того же объекта компиляции.
![]() |
---|
Параметр /QIfist не действует по умолчанию, поскольку округление битов также влияет на плавающую запятую при округлении до плавающей запятой (которое производится после каждого расчета), поэтому при установке флажков для округления в стиле языка C (в сторону нуля) расчет плавающей запятой может измениться.Параметр /QIfist не следует использовать, если код зависит от ожидаемого поведения усечения дробной части числа с плавающей запятой.Если есть сомнения, то не следует использовать /QIfist. |
Параметр /QIfist использовать не рекомендуется.Благодаря работе компилятора, скорость преобразования от float до int значительные улучшилась.Дополнительные сведения см. в разделе Deprecated Compiler Options.
Установка данного параметра компилятора в среде разработки Visual Studio
Откройте диалоговое окно Страницы свойств проекта.Дополнительные сведения см. в разделе Открытие свойств страниц проекта.
Откройте папку C/C++.
Выберите страницу свойств Командная строка.
Введите параметры компилятора в поле Дополнительные параметры.
Установка данного параметра компилятора программным способом
- Дополнительные сведения см. в разделе AdditionalOptions.