diff options
Diffstat (limited to 'src/lib/libc/stdlib/strtod.3')
-rw-r--r-- | src/lib/libc/stdlib/strtod.3 | 87 |
1 files changed, 59 insertions, 28 deletions
diff --git a/src/lib/libc/stdlib/strtod.3 b/src/lib/libc/stdlib/strtod.3 index 0b7f973857..f1fc781f7d 100644 --- a/src/lib/libc/stdlib/strtod.3 +++ b/src/lib/libc/stdlib/strtod.3 | |||
@@ -13,11 +13,7 @@ | |||
13 | .\" 2. Redistributions in binary form must reproduce the above copyright | 13 | .\" 2. Redistributions in binary form must reproduce the above copyright |
14 | .\" notice, this list of conditions and the following disclaimer in the | 14 | .\" notice, this list of conditions and the following disclaimer in the |
15 | .\" documentation and/or other materials provided with the distribution. | 15 | .\" documentation and/or other materials provided with the distribution. |
16 | .\" 3. All advertising materials mentioning features or use of this software | 16 | .\" 3. Neither the name of the University nor the names of its contributors |
17 | .\" must display the following acknowledgement: | ||
18 | .\" This product includes software developed by the University of | ||
19 | .\" California, Berkeley and its contributors. | ||
20 | .\" 4. Neither the name of the University nor the names of its contributors | ||
21 | .\" may be used to endorse or promote products derived from this software | 17 | .\" may be used to endorse or promote products derived from this software |
22 | .\" without specific prior written permission. | 18 | .\" without specific prior written permission. |
23 | .\" | 19 | .\" |
@@ -33,44 +29,74 @@ | |||
33 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 29 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
34 | .\" SUCH DAMAGE. | 30 | .\" SUCH DAMAGE. |
35 | .\" | 31 | .\" |
36 | .\" from: @(#)strtod.3 5.3 (Berkeley) 6/29/91 | 32 | .\" $OpenBSD: strtod.3,v 1.14 2008/09/13 22:48:45 martynas Exp $ |
37 | .\" $Id: strtod.3,v 1.1.1.1 1995/10/18 08:42:19 deraadt Exp $ | ||
38 | .\" | 33 | .\" |
39 | .Dd June 29, 1991 | 34 | .Dd $Mdocdate: September 13 2008 $ |
40 | .Dt STRTOD 3 | 35 | .Dt STRTOD 3 |
41 | .Os | 36 | .Os |
42 | .Sh NAME | 37 | .Sh NAME |
43 | .Nm strtod | 38 | .Nm strtod , |
39 | .Nm strtof , | ||
40 | .Nm strtold | ||
44 | .Nd convert | 41 | .Nd convert |
45 | .Tn ASCII | 42 | .Tn ASCII |
46 | string to double | 43 | string to double, float or long double |
47 | .Sh SYNOPSIS | 44 | .Sh SYNOPSIS |
45 | .Fd #include <math.h> | ||
48 | .Fd #include <stdlib.h> | 46 | .Fd #include <stdlib.h> |
49 | .Ft double | 47 | .Ft double |
50 | .Fn strtod "const char *nptr" "char **endptr" | 48 | .Fn strtod "const char *nptr" "char **endptr" |
49 | .Pp | ||
50 | .Ft float | ||
51 | .Fn strtof "const char *nptr" "char **endptr" | ||
52 | .Pp | ||
53 | .Ft long double | ||
54 | .Fn strtold "const char *nptr" "char **endptr" | ||
51 | .Sh DESCRIPTION | 55 | .Sh DESCRIPTION |
52 | The | 56 | The |
53 | .Fn strtod | 57 | .Fn strtod |
54 | function converts the initial portion of the string | 58 | function converts the initial portion of the string pointed to by |
55 | pointed to by | ||
56 | .Fa nptr | 59 | .Fa nptr |
57 | to | 60 | to |
58 | .Em double | 61 | .Li double |
62 | representation. | ||
63 | The | ||
64 | .Fn strtof | ||
65 | function converts the initial portion of the string pointed to by | ||
66 | .Fa nptr | ||
67 | to | ||
68 | .Li float | ||
69 | representation. | ||
70 | The | ||
71 | .Fn strtold | ||
72 | function converts the initial portion of the string pointed to by | ||
73 | .Fa nptr | ||
74 | to | ||
75 | .Li long double | ||
59 | representation. | 76 | representation. |
60 | .Pp | 77 | .Pp |
61 | The expected form of the string is an optional plus (``+'') or minus | 78 | The expected form of the string is an optional plus |
62 | sign (``-'') followed by a sequence of digits optionally containing | 79 | .Pq Ql + |
80 | or minus sign | ||
81 | .Pq Ql - | ||
82 | followed by a sequence of digits optionally containing | ||
63 | a decimal-point character, optionally followed by an exponent. | 83 | a decimal-point character, optionally followed by an exponent. |
64 | An exponent consists of an ``E'' or ``e'', followed by an optional plus | 84 | An exponent consists of an |
65 | or minus sign, followed by a sequence of digits. | 85 | .Sq E |
86 | or | ||
87 | .Sq e , | ||
88 | followed by an optional plus or minus sign, followed by a sequence of digits. | ||
66 | .Pp | 89 | .Pp |
67 | Leading white-space characters in the string (as defined by the | 90 | Leading whitespace characters in the string (as defined by the |
68 | .Xr isspace 3 | 91 | .Xr isspace 3 |
69 | function) are skipped. | 92 | function) are skipped. |
70 | .Sh RETURN VALUES | 93 | .Sh RETURN VALUES |
71 | The | 94 | The |
72 | .Fn strtod | 95 | .Fn strtod , |
73 | function returns the converted value, if any. | 96 | .Fn strtof |
97 | and | ||
98 | .Fn strtold | ||
99 | functions return the converted value, if any. | ||
74 | .Pp | 100 | .Pp |
75 | If | 101 | If |
76 | .Fa endptr | 102 | .Fa endptr |
@@ -88,18 +114,18 @@ is stored in the location referenced by | |||
88 | If the correct value would cause overflow, plus or minus | 114 | If the correct value would cause overflow, plus or minus |
89 | .Dv HUGE_VAL | 115 | .Dv HUGE_VAL |
90 | is returned (according to the sign of the value), and | 116 | is returned (according to the sign of the value), and |
91 | .Dv ERANGE | 117 | .Er ERANGE |
92 | is stored in | 118 | is stored in |
93 | .Va errno . | 119 | .Va errno . |
94 | If the correct value would cause underflow, zero is | 120 | If the correct value would cause underflow, zero is returned and |
95 | returned and | 121 | .Er ERANGE |
96 | .Dv ERANGE | 122 | is stored in |
97 | is stored in | ||
98 | .Va errno . | 123 | .Va errno . |
99 | .Sh ERRORS | 124 | .Sh ERRORS |
100 | .Bl -tag -width Er | 125 | .Bl -tag -width Er |
101 | .It Bq Er ERANGE | 126 | .It Bq Er ERANGE |
102 | Overflow or underflow occurred. | 127 | Overflow or underflow occurred. |
128 | .El | ||
103 | .Sh SEE ALSO | 129 | .Sh SEE ALSO |
104 | .Xr atof 3 , | 130 | .Xr atof 3 , |
105 | .Xr atoi 3 , | 131 | .Xr atoi 3 , |
@@ -109,6 +135,11 @@ Overflow or underflow occurred. | |||
109 | .Sh STANDARDS | 135 | .Sh STANDARDS |
110 | The | 136 | The |
111 | .Fn strtod | 137 | .Fn strtod |
112 | function | 138 | function conforms to |
113 | conforms to | 139 | .St -ansiC-89 . |
114 | .St -ansiC . | 140 | The |
141 | .Fn strtof | ||
142 | and | ||
143 | .Fn strtold | ||
144 | functions conform to | ||
145 | .St -ansiC-99 . | ||