First my context is that of a compiler writer who needs to convert floating point literals (strings) into float/double values. I haven\'t done any floating point programming
In C89 you may use sscanf.
For example:
float myfloat; if(sscanf(str, "%f", &myfloat) != 1) /* String could not be converted */ else /* String was converted, myfloat is usable */