double ustrtod(const char *s, char **endp);
This function converts as many characters of `s' that look like a floating point number into one, and sets `*endp' to point to the first unused character, if `endp' is not a NULL pointer. Example:
char *endp, *string = "456.203 askdfg"; double number = ustrtod(string, &endp);
Returns the string converted as a value of type `double'. If nothing was converted, returns zero with *endp pointing to the beginning of s.
uconvert(3), ustrtol(3), uatof(3)