Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menentukan Pematuhan IEEE 754 dalam C?
Menyemak Pematuhan IEEE 754 dalam C
Tidak seperti dalam C, di mana makro tertentu boleh digunakan untuk menentukan sama ada pengkompil mematuhi IEEE 754 standard titik terapung, C menyediakan pendekatan yang lebih mudah.
Menurut standard C (18.2.1.1), kelas std::numeric_limits mengandungi ahli statik is_iec559 . Ahli ini menunjukkan sama ada IEEE 754 disokong untuk jenis titik terapung yang ditentukan.
Untuk menyemak sama ada pengkompil anda menggunakan IEEE 754, anda boleh menggunakan kod berikut:
<code class="cpp">std::cout << std::boolalpha; std::cout << "Double: " << std::numeric_limits<double>::is_iec559 << std::endl; std::cout << "Float: " << std::numeric_limits<float>::is_iec559 << std::endl;</code>
Output bagi kod ini akan menjadi benar jika IEEE 754 digunakan untuk jenis titik terapung masing-masing dan salah sebaliknya.
Sebagai alternatif, anda boleh menggunakan kaedah yang dicadangkan oleh Adam's jawapan untuk C. Walau bagaimanapun, perlu diingatkan bahawa penyusun berbeza mungkin mempunyai mekanisme khusus untuk menyemak pematuhan IEEE 754. Rujuk dokumentasi pengkompil anda disyorkan untuk mendapatkan cerapan tambahan.
Atas ialah kandungan terperinci Bagaimana untuk Menentukan Pematuhan IEEE 754 dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!