| @c Documentation of gnulib module 'c-strtod'. | |
| @c Copyright (C) 2008--2026 Free Software Foundation, Inc. | |
| @c Permission is granted to copy, distribute and/or modify this document | |
| @c under the terms of the GNU Free Documentation License, Version 1.3 or | |
| @c any later version published by the Free Software Foundation; with no | |
| @c Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A | |
| @c copy of the license is at <https://www.gnu.org/licenses/fdl-1.3.en.html>. | |
| @mindex c-strtod | |
| The @code{c-strtod} module contains a string to number (@samp{double}) | |
| conversion function operating on single-byte character strings, that operates | |
| as if the locale encoding was ASCII. | |
| (The "C" locale on many systems has the locale encoding "ASCII".) | |
| The function is: | |
| @smallexample | |
| extern double c_strtod (const char *string, char **endp); | |
| @end smallexample | |
| In particular, only a period @samp{.} is accepted as decimal point, even | |
| when the current locale's notion of decimal point is a comma @samp{,}, | |
| and no characters outside the basic character set are accepted. | |
| On platforms without @code{strtod_l}, this function is not safe for use in | |
| multi-threaded applications since it calls @code{setlocale}. |