man-pages/man3/strnlen.3

60 lines
1.4 KiB
Groff
Raw Normal View History

2004-11-03 13:51:07 +00:00
.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" References consulted:
.\" GNU glibc-2 source code and manual
.\"
.TH STRNLEN 3 2012-05-10 "GNU" "Linux Programmer's Manual"
2004-11-03 13:51:07 +00:00
.SH NAME
strnlen \- determine the length of a fixed-size string
.SH SYNOPSIS
.nf
.B #include <string.h>
.sp
.BI "size_t strnlen(const char *" s ", size_t " maxlen );
.fi
.sp
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
.sp
.BR strnlen ():
.PD 0
.ad l
.RS 4
.TP 4
Since glibc 2.10:
_XOPEN_SOURCE\ >=\ 700 || _POSIX_C_SOURCE\ >=\ 200809L
.TP
Before glibc 2.10:
_GNU_SOURCE
.RE
.ad
.PD
2004-11-03 13:51:07 +00:00
.SH DESCRIPTION
The
.BR strnlen ()
function returns the number of bytes in the string
pointed to by \fIs\fP, excluding the terminating null bye (\(aq\\0\(aq),
2008-06-09 15:49:35 +00:00
but at most \fImaxlen\fP.
In doing this,
.BR strnlen ()
looks only at the first
\fImaxlen\fP bytes at \fIs\fP and never beyond \fIs+maxlen\fP.
2004-11-03 13:51:07 +00:00
.SH "RETURN VALUE"
The
.BR strnlen ()
function returns \fIstrlen(s)\fP, if that is less than
2008-06-09 15:49:35 +00:00
\fImaxlen\fP, or \fImaxlen\fP
if there is no null byte (\(aq\\0\(aq) among the first
\fImaxlen\fP bytes pointed to by \fIs\fP.
2004-11-03 13:51:07 +00:00
.SH "CONFORMING TO"
POSIX.1-2008.
2004-11-03 13:51:07 +00:00
.SH "SEE ALSO"
.BR strlen (3)