DECIMAL-Funktionen für C

Anmerkung: Die folgende Funktionalität für den Datentyp DECIMAL steht nur Benutzern von IBM® Informix ESQL/C zur Verfügung. Damit diese Funktionen verwendet werden können, müssen Benutzer von ESQL/C ihren C-Code manuell mit den ESQL/C-Bibliotheken verknüpfen.

Der Datentyp DECIMAL ist eine systemunabhängige Methode für die Darstellung von Zahlen mit bis zu 32 signifikanten Ziffern, mit oder ohne Dezimaltrennzeichen und mit Exponenten im Bereich von -128 bis +126. ESQL/C stellt Routinen bereit, die die Konvertierung von Zahlen des Typs DECIMAL in jeden und aus jedem Datentyp vereinfachen, der in der Programmiersprache C zulässig ist. Zahlen des Typs DECIMAL bestehen aus einem Exponenten und einer Mantisse (oder Nachkommastellen) zur Basis 100. Im normalisierten Format muss die erste Ziffer der Mantisse größer als 0 sein.

Der Datentyp DECIMAL wird intern durch die Struktur dec_t dargestellt. Die Struktur decimal und die Typdefinition dec_t sind in der Headerdatei decimal.h enthalten, die Bestandteil des Produkts 'ESQL/C' ist. Nehmen Sie diese Datei in alle C-Quellendateien auf, die eine der Funktionen für Dezimalzahlen verwenden.

Alle Operationen für Zahlen des Typs decimal müssen unter Verwendung der folgenden ESQL/C-Bibliotheksfunktionen für den Datentyp decimal ausgeführt werden. Andere Operationen, Änderungen oder Analysen können zu unvorhersehbaren Ergebnissen führen.

Funktionsname Beschreibung
deccvasc( ) Konvertiert den C-Typ int1 in den Typ DECIMAL.
dectoasc( ) Konvertiert den Typ DECIMAL in den C-Typ int1.
deccvint( ) Konvertiert den C-Typ int in den Typ DECIMAL.
dectoint( ) Konvertiert den Typ DECIMAL in den C-Typ int.
deccvlong( ) Konvertiert den C-Typ int4 in den Typ DECIMAL.
dectolong( ) Konvertiert den Typ DECIMAL in den C-Typ int4.
deccvflt( ) Konvertiert den C-Typ float in den Typ DECIMAL.
dectoflt( ) Konvertiert den Typ DECIMAL in den C-Typ float.
deccvdbl( ) Konvertiert den C-Typ double in den Typ DECIMAL.
dectodbl( ) Konvertiert den Typ DECIMAL in den C-Typ double.
decadd( ) Addiert zwei Zahlen des Typs DECIMAL.
decsub( ) Subtrahiert zwei Zahlen des Typs DECIMAL.
decmul( ) Multipliziert zwei Zahlen des Typs DECIMAL.
decdiv( ) Dividiert zwei Zahlen des Typs DECIMAL.
deccmp( ) Vergleicht zwei Zahlen des Typs DECIMAL.
deccopy( ) Kopiert eine Zahl des Typs DECIMAL.
dececvt( ) Konvertiert einen Wert des Typs DECIMAL in eine ASCII-Zeichenfolge.
decfcvt( ) Konvertiert einen Wert des Typs DECIMAL in eine ASCII-Zeichenfolge.

Weitere Informationen zu einzelnen Funktionen enthält die Veröffentlichung IBM Informix ESQL/C Programmer's Manual.


Feedback