xref: /freebsd/lib/libc/stdlib/atol.3 (revision 8db56defa766eacdbaf89a37f25b11a57fd9787a)
1.\" Copyright (c) 1990, 1991, 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" This code is derived from software contributed to Berkeley by
5.\" the American National Standards Committee X3, on Information
6.\" Processing Systems.
7.\"
8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions
10.\" are met:
11.\" 1. Redistributions of source code must retain the above copyright
12.\"    notice, this list of conditions and the following disclaimer.
13.\" 2. Redistributions in binary form must reproduce the above copyright
14.\"    notice, this list of conditions and the following disclaimer in the
15.\"    documentation and/or other materials provided with the distribution.
16.\" 3. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.Dd May 14, 2013
33.Dt ATOL 3
34.Os
35.Sh NAME
36.Nm atol , atoll
37.Nd convert
38.Tn ASCII
39string to
40.Vt long
41or
42.Vt "long long"
43integer
44.Sh LIBRARY
45.Lb libc
46.Sh SYNOPSIS
47.In stdlib.h
48.Ft long
49.Fn atol "const char *nptr"
50.Ft "long long"
51.Fn atoll "const char *nptr"
52.Sh DESCRIPTION
53The
54.Fn atol
55function converts the initial portion of the string pointed to by
56.Fa nptr
57to
58.Vt long
59integer
60representation.
61.Pp
62It is equivalent to:
63.Pp
64.Dl "strtol(nptr, (char **)NULL, 10);"
65.Pp
66The
67.Fn atoll
68function converts the initial portion of the string pointed to by
69.Fa nptr
70to
71.Vt "long long"
72integer
73representation.
74.Pp
75It is equivalent to:
76.Pp
77.Dl "strtoll(nptr, (char **)NULL, 10);"
78.Sh COMPATIBILITY
79The
80.Fx
81implementations of the
82.Fn atol
83and
84.Fn atoll
85functions are thin wrappers around
86.Fn strtol
87and
88.Fn strtoll
89respectively, so these functions will affect the value of
90.Va errno
91in the same way that the
92.Fn strtol
93and
94.Fn strtoll
95functions are able to.
96This behavior of
97.Fn atol
98and
99.Fn atoll
100is not required by
101.St -isoC
102or
103.St -isoC-99 ,
104but it is allowed by all of
105.St -isoC , St -isoC-99
106and
107.St -p1003.1-2001 .
108.Sh ERRORS
109The functions
110.Fn atol
111and
112.Fn atoll
113may affect the value of
114.Va errno
115on an error.
116.Sh SEE ALSO
117.Xr atof 3 ,
118.Xr atoi 3 ,
119.Xr strtod 3 ,
120.Xr strtol 3 ,
121.Xr strtoul 3
122.Sh STANDARDS
123The
124.Fn atol
125function
126conforms to
127.St -isoC .
128The
129.Fn atoll
130function
131conforms to
132.St -isoC-99 .
133