Funktionsname : _control87
Header-Datei : <float.h>
Funktionsprototyp : unsigned int _control87(unsigned int new,unsigned int mask);
Funktion : Gleitkomma-Steuerwörter abrufen und festlegen
Parameter : unsigned int neuer neuer Steuerwortbitwert, unsigned int mask legt die Maske des neuen Steuerwortbits fest
Rückgabewert : Gibt ein Gleitkomma-Steuerwort zurück
Programmbeispiel : Berechnen Sie das Produkt zweier doppelter Genauigkeiten unter verschiedenen Steuerwörtern
#include<stdio.h>#include<float.h>intmain(){doublea=0.1;printf(original:0x%4xn,_control87(0,0));//Das ursprüngliche Steuerwort ausgeben printf(% 1.1f*%1.1f=%.15en,a,a,a*a);//Berechnen Sie das Produkt zweier doppelter Genauigkeiten//Geben Sie das 24-Bit-Steuerwort aus printf(24-bit:0x%4x n,_control87(_PC_24,_MCW_PC));printf(%1.1f*%1.1f=%.15en,a,a,a*a);//Berechnen Sie das Produkt zweier doppelter Genauigkeit return0;}
Laufergebnisse:
Original:0x8001f0.1*0.1=1.000000000000000e-00224-bit:0xa001f0.1*0.1=9.999999776482582e-003