NAME

wcslen, wcsnlen — get length of a fixed-sized wide-character string

SYNOPSIS

#include <wchar.h>

size_t wcslen(const wchar_t *
ws);

[CX] [Option Start] size_t wcsnlen(const wchar_t *ws, size_t maxlen); [Option End]

DESCRIPTION

For wcslen(): [CX] [Option Start]  The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard. [Option End]

The wcslen() function shall compute the number of wide-character codes in the wide-character string to which ws points, not including the terminating null wide-character code.

[CX] [Option Start] The wcsnlen() function shall compute the smaller of the number of wide characters in the array to which ws points, not including any terminating null wide-character code, and the value of maxlen. The wcsnlen() function shall never examine more than the first maxlen characters of the wide-character array pointed to by ws. [Option End]

[CX] [Option Start] The wcslen() and wcsnlen() functions shall not change the setting of errno on valid input. [Option End]

RETURN VALUE

The wcslen() function shall return the length of ws.

[CX] [Option Start] The wcsnlen() function shall return the number of wide characters preceding the first null wide-character code in the array to which ws points, if ws contains a null wide-character code within the first maxlen wide characters; otherwise, it shall return maxlen. [Option End]

No return values are reserved to indicate an error.

ERRORS

No errors are defined.


The following sections are informative.

EXAMPLES

None.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

strlen , wcslcat

XBD <wchar.h>

CHANGE HISTORY

First released in Issue 4. Derived from the MSE working draft.

Issue 7

The wcsnlen() function is added from The Open Group Technical Standard, 2006, Extended API Set Part 1.

POSIX.1-2008, Technical Corrigendum 2, XSH/TC2-2008/0390 [560] is applied.

Issue 8

Austin Group Defect 448 is applied, adding a requirement that wcslen() and wcsnlen() do not change the setting of errno on valid input.

Austin Group Defect 986 is applied, adding wcslcat() to the SEE ALSO section.

End of informative text.