Function

GLib-2.0GLibascii_strtod

  • Converts a string to a floating point value.

    This function behaves like the standard strtod() function does in the C locale. It does this without actually changing the current locale, since that would not be thread-safe. A limitation of the implementation is that this function will still accept localized versions of infinities and NANs.

    This function is typically used when reading configuration files or other non-user input that should be locale independent. To handle input from the user you should normally use the locale-sensitive system strtod() function.

    To convert from a gdouble to a string in a locale-insensitive way, use GLib.ascii_dtostr.

    If the correct value would cause overflow, plus or minus HUGE_VAL is returned (according to the sign of the value), and ERANGE is stored in errno. If the correct value would cause underflow, a value whose magnitude is no greater than the smallest normalised positive number is returned; whether ERANGE is set is implementation-defined (it may not be set for gradual underflow where a subnormal value is returned).

    This function resets errno before calling strtod() so that you can reliably detect overflow and underflow.

    Parameters

    • nptr: string

      the string to convert to a numeric value

    Returns [number, string]

    the converted value