Heim > Backend-Entwicklung > C++ > Gibt es standardisierte Gleitkommatypen fester Größe in C und C?

Gibt es standardisierte Gleitkommatypen fester Größe in C und C?

DDD
Freigeben: 2024-10-29 17:00:02
Original
314 Leute haben es durchsucht

Are There Standardized Fixed-Size Floating Point Types in C and C  ?

Gleitkommatypen fester Größe

Im Streben nach präziser Darstellung und effizienter Speicherung hat sich die Standardisierung von Gleitkommatypen fester Größe durchgesetzt war ein Diskussionsthema in der C- und C-Community. Während C99, boost/cstdint.hpp und C 0x Ganzzahltypen fester Größe wie int32_t bereitstellen, stellt sich die Frage: Gibt es analoge Gleitkommatypen fester Größe?

Der aktuelle Standard

Die Antwort ist ein klares Nein. Derzeit bieten weder der C- noch der C-Standard Gleitkommatypen mit fester Größe an. Dies steht im Gegensatz zu Integer-Typen, bei denen das Vorhandensein von int32_t und ähnlichen Typen eine konsistente Darstellung auf verschiedenen Plattformen gewährleistet.

Das Fehlen von float32_t

Das Fehlen von a Typ wie float32_t ist besonders erwähnenswert, da float weder in C noch in C garantiert ein binäres Gleitkommaformat ist. Abhängig vom Compiler entspricht Float möglicherweise dem 32-Bit-Binärformat IEEE-754.

Compiler-Garantien und Vorbehalte

In der Praxis wird Float häufig verwendet auf vielen nicht eingebetteten Plattformen als IEEE-754-Einzeltyp implementiert. Es ist jedoch wichtig, sich darüber im Klaren zu sein, dass einige Compiler Ausdrücke möglicherweise in einem breiteren Format auswerten, was möglicherweise zu Diskrepanzen bei numerischen Operationen führt.

Zukünftige Entwicklungen

Bemühungen, dies zu beheben, sind im Gange dieses Problem. Eine Arbeitsgruppe untersucht die Hinzufügung von C-Sprachbindungen für die Revision von IEEE-754 aus dem Jahr 2008. Wenn ein solcher Schritt in C unternommen würde, wäre es wahrscheinlich, dass der C-Standard irgendwann diesem Beispiel folgen und den Weg für standardisierte Gleitkommatypen mit fester Größe in der Zukunft ebnen würde.

Das obige ist der detaillierte Inhalt vonGibt es standardisierte Gleitkommatypen fester Größe in C und C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage