Die Konvertierung von c in i erfolgt gemäß:Hat einer der Operanden einen numerischen Datentyp (i, f, p), wird der andere Operand in den beteiligten numerischen Datentyp mit dem größten Wertebereich konvertiert, wobei der Wertebereich von Datentyp f größer als der von p und dieser größer als der von i ist.
Egal wie, ob nun c in i oder c in p, die interne Typkonvertierung rundet kaufmännisch, somit ist das beobachtete Verhalten absolut nachvollziehbar.Das Quellfeld muss eine Zahl in mathematischer oder kaufmännischer Notation enthalten. Ausnahme: Ein Quellfeld, das nur Leerzeichen enthält, wird als die Zahl Null interpretiert. Die wissenschaftliche Notation ist nicht zulässig, es sei denn, sie ist als mathematische Notation interpretierbar. Nachkommastellen werden kaufmännisch auf ganzzahlige Werte gerundet. Wenn die Zahl im Wertebereich des Datentyps i, b oder s liegt, wird sie in die interne Darstellung einer Integerzahl konvertiert, ansonsten kommt es zu einer behandelbaren Ausnahme. Vor Release 6.10 gab es auch dann eine Ausnahme, wenn das Quellfeld als Textfeldliteral '-2147483648' angegeben wurde.
Folgende Benutzer bedankten sich beim Autor casman für den Beitrag:
Frank Zet.