date and time created 90/05/15 22:26:37 by bostic
authorKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Wed, 16 May 1990 13:26:37 +0000 (05:26 -0800)
committerKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Wed, 16 May 1990 13:26:37 +0000 (05:26 -0800)
SCCS-vsn: lib/libc/stdlib/strtoul.3 5.1

usr/src/lib/libc/stdlib/strtoul.3 [new file with mode: 0644]

diff --git a/usr/src/lib/libc/stdlib/strtoul.3 b/usr/src/lib/libc/stdlib/strtoul.3
new file mode 100644 (file)
index 0000000..1ce7e0c
--- /dev/null
@@ -0,0 +1,97 @@
+.\" Copyright (c) 1990 The Regents of the University of California.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to Berkeley by
+.\" Chris Torek.
+.\"
+.\" %sccs.include.redist.man%
+.\"
+.\"    @(#)strtoul.3   5.1 (Berkeley) %G%
+.\"
+.TH STRTOUL 3 ""
+.UC 7
+.SH NAME
+strtoul \- convert a string to an unsigned long integer
+.SH SYNOPSIS
+.B #include <stdlib.h>
+.br
+.B #include <limits.h>
+.PP
+.B "unsigned long strtoul(char *nptr, char **endptr, int base);
+.SH DESCRIPTION
+.B Strtoul
+converts the string in
+.I nptr
+to an
+.B "unsigned long"
+value according to the given
+.IR base ,
+which must be between 2 and 36 inclusive,
+or be the special value 0.
+.PP
+The string may begin with an arbitrary amount of white space
+(as determined by
+.BR isspace ;
+see
+.IR ctype (3)),
+followed by a single optional `+' or `-' sign.
+If
+.I base
+is zero or 16,
+the string may then include a `0x' prefix,
+and the number will be read in base 16; otherwise, a zero
+.I base
+is taken as 10 (decimal) unless the next character is `0',
+in which case it is taken as 8 (octal).
+.PP
+The remainder of the string is converted to an
+.B "unsigned long"
+value in the obvious manner,
+stopping at the end of the string
+or at the first character that does not produce a valid digit
+in the given base.
+(In bases above 10, the letter `A' in either upper or lower case
+represents 10, `B' represents 11, and so forth, with `Z' representing 35.)
+.PP
+If
+.I endptr
+is non nil,
+.B strtoul
+stores the address of the first invalid character in
+.IR *endptr .
+If there were no digits at all, however,
+.B strtoul
+stores the original value of
+.I nptr
+in
+.IR *endptr .
+(Thus, if
+.I *nptr
+is not '\e0' but
+.IR **endptr
+is '\e0' on return, the entire string was valid.)
+.SH RETURN VALUE
+.B Strtoul
+returns either the result of the conversion
+or, if there was a leading minus sign,
+the negation of the result of the conversion,
+unless the original (non-negated) value would overflow;
+in the latter case,
+.B strtoul
+returns
+.B ULONG_MAX
+and sets
+.B errno
+to
+.BR ERANGE .
+.SH ERRORS
+.TP
+[ERANGE]
+The given string was out of range; the value converted has been clamped.
+.SH SEE ALSO
+strtol(3)
+.SH STANDARDS
+.B Strtoul
+conforms to ANSI X3.159-1989 (``ANSI C'').
+.SH BUGS
+Ignores the current locale.