| .\" 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) |