_atold, _wtold

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Math.h - Index


Header-Datei

math.h

Kategorie

Konvertierungsroutinen, mathematische Routinen

Prototyp

long double _atold(const char *s);
long double _wtold(const wchar_t *s);

Beschreibung

Konvertiert einen String in einen Wert des Typs long double.

_wtold ist die Multibyte-Version dieser Funktion. Sie konvertiert einen String aus Multibyte-Zeichen in einen Wert des Typs long double.

_atof ist die Gleitkommaversion von _atold.

_atold konvertiert den String, auf den s zeigt, in einen Wert des Typs long double. Diese Funktion erkennt

Einen optionalen String aus Tabulator- und Leerzeichen

Ein optionales Vorzeichen

Einen String aus Ziffern und einem optionalen Dezimalzeichen

Ein optionales e oder E, gefolgt von einem optionalen, vorzeichenbehafteten Integerwert

Die Konvertierung wird beim ersten nicht erkannten Zeichen beendet. Diese Funktionen treffen keine Vorkehrungen gegen einen Überlauf.

Die Funktionen strtod und _strtold sind atof und _atold ähnlich, bieten aber eine bessere Fehlererkennung, weshalb sie für bestimmte Anwendungen vorzuziehen sind.

Rückgabewert

Gibt den konvertierten Wert des Eingabe-Strings zurück.

Tritt ein Überlauf auf, gibt _atold plus oder minus HUGE_VAL (oder _LHUGE_VAL) zurück, setzt errno auf ERANGE (Ergebnis außerhalb des gültigen Bereichs) und ruft _matherr (oder _matherrl) nicht auf.

Beispiel

#include <stdlib.h>
#include <math.h>
long double add_inputs(wchar_t* left, wchar_t* right)
{
  /* Transform the input strings into floats */
  long double d_left = _wtold(left);
  long double d_right = _wtold(right);

  /* Add the transformed floats */
  return d_left + d_right;
}

Portabilität

POSIX Win32 ANSI C ANSI C++

_atold

+

_wtold

+