atof(3)

atof3

Convert ascii string to double

Usage

#include <stdlib.h>

double

atof(const char *nptr);

Library

Standard C Library (libc, -lc)

Overview

The atof() function converts the initial portion of the string pointed to by nptr to double representation.

It is equivalent to:

strtod(nptr, (char **)NULL);

The decimal point character is defined in the program's locale (category LC_NUMERIC).

Implementation notes

The atof() function is not thread-safe and also not async-cancel-safe.

The atof() function has been deprecated by strtod() and should not be used in new code.

Errors

The function atof() need not affect the value of errno on an error.

Releases

87 releases since FreeBSD 2.0.5-RELEASE; the text changed 42 times.

  1. 2.0.5–2.2.6
  2. 2.2.7–2.2.9
  3. 3.0–3.4
  4. 3.5–3.5.1
  5. 4.0
  6. 4.1–4.2
  7. 4.3–4.4
  8. 4.5–4.11
  9. 5.0
  10. 5.1–6.3
  11. 6.4
  12. 7.0
  13. 7.1
  14. 7.2
  15. 7.3
  16. 7.4
  17. 8.0
  18. 8.1
  19. 8.2
  20. 8.3
  21. 8.4
  22. 9.0
  23. 9.1
  24. 9.2
  25. 9.3
  26. 10.0
  27. 10.1
  28. 10.2
  29. 10.3
  30. 10.4
  31. 11.0
  32. 11.1
  33. 11.2
  34. 11.3
  35. 11.4
  36. 12.0
  37. 12.1
  38. 12.2
  39. 12.3
  40. 12.4
  41. 13.0–13.2
  42. 13.3–14.5
  43. 15.0–16.0

Standards

The atof() function conforms to ISO/IEC 9945-1:1990 (“POSIX.1”), ISO/IEC 9899:1990 (“ISO C90”), and ISO/IEC 9899:1999 (“ISO C99”).

History

The atof() function appeared in Version 1 AT&T UNIX.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.