Bagikan melalui


/QIfist (Menekan _ftol)

Ditolak. Menekan panggilan fungsi _ftol pembantu saat konversi dari jenis floating-point ke jenis integral diperlukan.

Sintaks

/QIfist

Keterangan

Catatan

/QIfist hanya tersedia di compiler yang menargetkan x86; opsi pengkompilasi ini tidak tersedia di kompilator yang menargetkan x64 orARM.

Selain mengonversi dari jenis floating-point ke jenis integral, _ftol fungsi memastikan mode pembulatan unit floating-point (FPU) menuju nol (terpotong), dengan mengatur bit 10 dan 11 kata kontrol. Ini menjamin bahwa mengonversi dari jenis floating-point ke jenis integral terjadi seperti yang dijelaskan oleh standar ANSI C (bagian pecahan dari angka dibuang). Saat menggunakan /QIfist, jaminan ini tidak lagi berlaku. Mode pembulatan akan menjadi salah satu dari empat seperti yang didokumentasikan dalam manual referensi Intel:

  • Membulatkan ke arah terdekat (angka genap jika equidistant)

  • Membulatkan ke arah tak terbatas negatif

  • Membulatkan ke arah tak terbatas positif

  • Membulatkan ke arah nol

Anda dapat menggunakan fungsi Run-Time _control87, _controlfp, __control87_2 C untuk memodifikasi perilaku pembulatan FPU. Mode pembulatan default FPU adalah "Bulat ke arah terdekat." Menggunakan /QIfist dapat meningkatkan performa aplikasi Anda, tetapi tidak tanpa risiko. Anda harus menguji bagian kode Anda secara menyeluruh yang sensitif terhadap mode pembulatan sebelum mengandalkan kode yang dibangun dengan /QIfist di lingkungan produksi.

/arch (x86) dan /QIfist tidak dapat digunakan pada kompilasi yang sama.

Catatan

/QIfist tidak berlaku secara default karena bit pembulatan juga memengaruhi titik pecahan ke pembulatan titik mengambang (yang terjadi setelah setiap perhitungan), jadi ketika Anda mengatur bendera untuk pembulatan gaya C (menuju nol), perhitungan titik mengambang Anda mungkin berbeda. /QIfist tidak boleh digunakan jika kode Anda bergantung pada perilaku yang diharapkan untuk memotong bagian pecahan dari angka floating-point. Jika Anda tidak yakin, jangan gunakan /QIfist.

Opsi /QIfist tidak digunakan lagi mulai visual Studio 2005. Kompilator telah melakukan peningkatan signifikan dalam kecepatan konversi float ke int. Untuk daftar opsi pengkompilasi yang tidak digunakan lagi, lihat Opsi Pengkompilasi yang Tidak Digunakan lagi dan Dihapus di Opsi Pengkompilasi Yang Tercantum menurut Kategori.

Untuk mengatur opsi pengkompilasi ini di lingkungan pengembangan Visual Studio

  1. Buka kotak dialog Halaman Properti proyek. Untuk detailnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.

  2. Pilih halaman properti Properti>Konfigurasi C/C++>Baris Perintah.

  3. Ketik opsi pengkompilasi dalam kotak Opsi Tambahan.

Untuk mengatur opsi pengkompilasi ini secara terprogram

Baca juga

Opsi /Q (Operasi Tingkat Rendah)
Opsi Pengkompilasi MSVC
Sintaks Baris Perintah Pengkompilasi MSVC