blob: b394bd5d07ca61ab67a38d59d9b17a8c83800e0c [file] [log] [blame]
.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA)
.\" 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.
.\" %%%LICENSE_END
.\"
.\" References consulted:
.\" GNU glibc-2 source code and manual
.\" Dinkumware C library reference http://www.dinkumware.com/
.\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html
.\"
.TH WCSNLEN 3 2019-03-06 "GNU" "Linux Programmer's Manual"
.SH NAME
wcsnlen \- determine the length of a fixed-size wide-character string
.SH SYNOPSIS
.nf
.B #include <wchar.h>
.PP
.BI "size_t wcsnlen(const wchar_t *" s ", size_t " maxlen );
.fi
.PP
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
.PP
.BR wcsnlen ():
.PD 0
.ad l
.RS 4
.TP 4
Since glibc 2.10:
_POSIX_C_SOURCE\ >=\ 200809L
.TP
Before glibc 2.10:
_GNU_SOURCE
.RE
.ad
.PD
.SH DESCRIPTION
The
.BR wcsnlen ()
function is the wide-character equivalent
of the
.BR strnlen (3)
function.
It returns the number of wide-characters in the string pointed to by
.IR s ,
not including the terminating null wide character (L\(aq\e0\(aq),
but at most
.I maxlen
wide characters (note: this parameter is not a byte count).
In doing this,
.BR wcsnlen ()
looks at only the first
.I maxlen
wide characters at
.I s
and never beyond
.IR s+maxlen .
.SH RETURN VALUE
The
.BR wcsnlen ()
function returns
.IR wcslen(s) ,
if that is less than
.IR maxlen ,
or
.I maxlen
if there is no null wide character among the
first
.I maxlen
wide characters pointed to by
.IR s .
.SH VERSIONS
The
.BR wcsnlen ()
function is provided in glibc since version 2.1.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lb lb lb
l l l.
Interface Attribute Value
T{
.BR wcsnlen ()
T} Thread safety MT-Safe
.TE
.SH CONFORMING TO
POSIX.1-2008.
.SH SEE ALSO
.BR strnlen (3),
.BR wcslen (3)